Update about-github-sponsors.md

Why:
Closes [issue link]

What's being changed:

Check off the following:

[ ] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

@ananya26-vishnoi
This seems to be opened by accident, so I am going to close it now :yellow_heart: Take a look at the contributing.md to learn how to contribute in this repo. You can open a discussion if you have any questions :sparkles:


Neato Botvac D3 not responding to commands from HASS

Home Assistant release with the issue:
0.93.2
Last working Home Assistant release (if known):
0.82.1 (previous version I updated from)
Operating environment (Hass.io/Docker/Windows/etc.):
Docker, using official image.
Component/platform:
Neato Vacuum
Description of problem:
Vacuum state is available and correct, but start and spot clean services do not work. No error is printed in the logs. I started the vacuum via the Neato app and was able to send it back to the dock via HASS. Occasionally the vacuum will make a sound when the a service is called, but it doesn't start running.
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
neato:
  username: !secret neato_user
  password: !secret neato_password

Traceback (if applicable):
None
Additional information:
Neato model: D3 Connected

What does the status attribute show after you attempt to clean via HA? Also can you share the yaml you used?  Do you happen to have no go lines setup as well?  If no error is printed then the vacuums status attribute will be more helpful here.   You may need to wait 5 minutes for the attribute to update but check it after you attempt to clean via the front end.

Hi @dshokouhi, thanks for the quick response.
The yaml configuration is as specified in my original post. I wasn't triggering the vacuum from any yaml automations in my testing, just via the frontend. I've tried both the buttons on the vacuum status card and calling the services from the services dev-tool tab. Neither work. I'm assuming this means it won't work from an automation either.
I've given the start service another try from the frontend. However, the vacuum status attribute has not changed at all even after 10 minutes and there is no error attribute. The vacuum did play a jingle when the service was called, which was different to the normal start up jingle.
I don't have any no-go lines set up.
I'm not sure if any of this is any help, but please let me know of anything you'd like me to do to gather further information.
Thanks again!

Ok can you do me a favor and try to run the commands from the library directly?
https://github.com/stianaske/pybotvac
See if you can grab the state of the device and also start cleaning from the steps mentioned in the readme.  Please post the output of the state result here and any errors when you run start cleaning.
I think there may be a missing error or alert due the additional jingle you hear, also when you hear that sound do you see any alerts or errors in the Neato app? that can be something else to help troubleshoot here.

OK, here is some output from the library:
>>> robot.get_robot_state()
<Response [200]>
>>> robot.state
{'version': 1, 'reqId': '1', 'result': 'ok', 'data': {}, 'error': None, 'alert': None, 'state': 1, 'action': 0,
'cleaning': {'category': 2, 'mode': 1, 'modifier': 1, 'navigationMode': 1, 'spotWidth': 0, 'spotHeight': 0},
'details': {'isCharging': True, 'isDocked': True, 'isScheduleEnabled': False, 'dockHasBeenSeen': False,
'charge': 99}, 'availableCommands': {'start': True, 'stop': False, 'pause': False, 'resume': False,
'goToBase': False}, 'availableServices': {'generalInfo': 'basic-1', 'houseCleaning': 'basic-3', 'IECTest':
'basic-1', 'logCopy': 'basic-1', 'maps': 'advanced-1', 'preferences': 'basic-1', 'schedule': 'minimal-1',
'softwareUpdate': 'basic-1', 'spotCleaning': 'micro-2', 'wifi': 'basic-1'}, 'meta': {'modelName':
'BotVacD3Connected', 'firmware': '4.4.0-72'}}
>>> robot.start_cleaning() # robot plays same jingle as before, stubbornly refuses to clean
<Response [200]>
>>> robot.get_robot_state()
<Response [200]>
>>> robot.state
{'version': 1, 'reqId': '1', 'result': 'ok', 'data': {}, 'error': None, 'alert': None, 'state': 1, 'action': 0,
'cleaning': {'category': 4, 'mode': 2, 'modifier': 1, 'navigationMode': 1, 'mapId': '', 'spotWidth': 0,
'spotHeight': 0}, 'details': {'isCharging': False, 'isDocked': True, 'isScheduleEnabled': False,
'dockHasBeenSeen': False, 'charge': 100}, 'availableCommands': {'start': True, 'stop': False, 'pause':
False, 'resume': False, 'goToBase': False}, 'availableServices': {'generalInfo': 'basic-1',
'houseCleaning': 'basic-3', 'IECTest': 'basic-1', 'logCopy': 'basic-1', 'maps': 'advanced-1', 'preferences':
'basic-1', 'schedule': 'minimal-1', 'softwareUpdate': 'basic-1', 'spotCleaning': 'micro-2', 'wifi': 'basic-1'},
'meta': {'modelName': 'BotVacD3Connected', 'firmware': '4.4.0-72'}}

I don't seem to be getting any errors in the neato app when running these commands.
One time I tried the start_cleaning() method I got a set of tracebacks indicating that the connection timed out. I don't want to post the full thing here because it contains the robot serial number. If you think this would be useful let me know and I'll post an anonymised version.
That time the robot didn't play the jingle, so I suspect this is happening with at least some of the commands from Home Assistant.

yes I definitely need that traceback...feel free to remove or redact the robot serial and any other personal information.....that will be most helpful.  The state seems to be fine oddly enough.  One thing you can try is to create a cleaning map to see if that allows it to be cleaned.  But I will need that traceback to see whats causing it to error out.

OK, here is the (redacted) traceback:
>>> robot.start_cleaning()
Traceback (most recent call last):
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connection.py", line 160, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/util/connection.py", line 80, in create_connection
    raise err
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/util/connection.py", line 70, in create_connection
    sock.connect(sa)
TimeoutError: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connectionpool.py", line 603, in urlopen
    chunked=chunked)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connectionpool.py", line 344, in _make_request
    self._validate_conn(conn)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connectionpool.py", line 843, in _validate_conn
    conn.connect()
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connection.py", line 316, in connect
    conn = self._new_conn()
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connection.py", line 169, in _new_conn
    self, "Failed to establish a new connection: %s" % e)
urllib3.exceptions.NewConnectionError: <urllib3.connection.VerifiedHTTPSConnection object at 0x7f538657f940>: Failed to establish a new connection: [Errno 110] Connection timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/connectionpool.py", line 641, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/urllib3/util/retry.py", line 399, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='nucleo.neatocloud.com', port=443): Max retries exceeded with url: /vendors/neato/robots/XXXXXXXX-XXXXXXXXXXXX/messages (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f538657f940>: Failed to establish a new connection: [Errno 110] Connection timed out',))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 76, in start_cleaning
    if self.service_version == 'basic-1':
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 226, in service_version
    return self.available_services['houseCleaning']
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 222, in available_services
    return self.state['availableServices']
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 218, in state
    return self.get_robot_state().json()
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 176, in get_robot_state
    return self._message({'reqId': "1", 'cmd': "getRobotState"})
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/pybotvac/robot.py", line 61, in _message
    headers=self._headers)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/api.py", line 116, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/home/rob/.virtualenvs/pybotvac/lib/python3.6/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='nucleo.neatocloud.com', port=443): Max retries exceeded with url: /vendors/neato/robots/XXXXXXXX-XXXXXXXXXXXX/messages (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f538657f940>: Failed to establish a new connection: [Errno 110] Connection timed out',))

After I completed my testing last night I also noticed a message in the Neato app regarding a missing cleaning map (it advised me to run another clean and contact support if the problem persists). The message seems to have disappeared now so I can't give you the exact wording.
Do I need to go through the no-go lines/floorplan wizard to create a cleaning map? The robot has been creating maps on every run already. It seems odd that it now wouldn't have one.

Yea that is just a connection error so nothing specific.  Since you do not have a floorplan have you tried waiting a minute or two after the jingle to see if it will start cleaning on its own?  The code is designed to grab the error for missing floorplan and start a new clean.
https://github.com/stianaske/pybotvac/blob/master/pybotvac/robot.py#L116
Can you try the vacuum.neato_custom_cleaning service call?  Try sending category: 2 and the entity_id of the vacuum as the service data.  Let me know if that works.   I have a feeling this will work, if that is case the quickest fix I can offer is to create a floorplan using the neato app, floorplans are not the same as the cleaning map you get when the vacuum is done cleaning.  You can create a floorplan in the menu in the neato app.

Yes, I have tried waiting and the vacuum doesn't start with the normal vacuum.start service. The good news is that it starts with the vacuum.neato_custom_cleaning service with the options you specified above.
I'll try running the wizard to create the floorplan in the next few days and see if that makes a difference to the other services.
Thanks for your help so far.

Ok probably what is happening is your model of the botvac is not returning the expected error message like the D7 does.   This is actually not an issue with Home Assistant but more of an issue with the library at pybotvac.  Can you file a bug at this repository (https://github.com/stianaske/pybotvac) since you had the same behavior using the start_cleaning method?  Once we get it fixed there we can get it fixed in HA.  In the meantime you can create a switch template that starts the vacuum with the above service call if you prefer not to create a floorplan.  If you chose to create one and stick with it then nothing is needed :)

Sorry it's taken me a while to get back to this. I ran the cleaning run to create the floorplan and it does appear to work now. Spot cleaning via HASS still doesn't work though (I guess it's the same issue since it just uses the start_cleaning method underneath).
I've posted a corresponding issue for pybotvac: stianaske/pybotvac#41
Thanks for all the help so far.

Tested in latest version of HASS, no change in behaviour. Still valid as underlying issue in pybotvac library has not been fixed.

Tested in latest version of HASS, still seeing same issue with D3

@aeckard87 please describe your problem in a new issue. Tell us exactly what you are doing and what happens as result. Thanks


Release Version?

Is there a version 1.0 release of this code by any chance? It would be helpful to have for wrapping into a conda environment for pipelines, etc.

Not too familiar with this but I've just published a v1.0, let me know if anything else will help.


Failing test run in CI without actual failing test report or clear cause

Describe the issue
@stefanomunarini, the problem seems to be with management tests, because there is a test that creates ref_01 and test_dataset_01 twice. This is in the log:
[2146](https://github.com/ietf-ribose/bibxml-service/actions/runs/3281919051/jobs/5404603862#step:3:2147)
bibxml-service-test-db-1     | 2022-10-19 13:24:19.535 UTC [77] DETAIL:  Key (ref, dataset)=(ref_01, test_dataset_01) already exists.
[2147](https://github.com/ietf-ribose/bibxml-service/actions/runs/3281919051/jobs/5404603862#step:3:2148)

I know one case where this happens in that test, but it should be caught by assertRaises(). Another option is that the DB does not get cleaned up for some reason or we have duplicated keys some other way.
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

Actually, this report may not be relevant. The error happens and gets caught by assertRaises(), but it’s still logged which is fine. The error may happen anywhere else. It doesn’t seem to be a test failure.


cant copy text from integrated terminal

VSCode Version:1.2.0
OS Version:Windows 10

Steps to Reproduce:

selected text from terminal
tried right click. no context menu open

Duplicate of https://github.com/Microsoft/vscode/issues/6451


Add method to help user get queries from Explore to Compare

This is going to be some slightly fancied-up version of cut and paste, but the idea is to make it as obvious as we can without pulling in lots of hard stuff about sessions and storing things in cookies, etc.

At this point, we just need a button on the Explore view that pops up a dialogue with the geojson link, like the share button on Compare view, but with unshortened link and different copy:

"Get query for Compare View"
Inside the box, include a button, "Open Compare View" that opens compare in new tab


Hide Accordion Content without Unmounting

Feature request
Overview
Add an option to hide the accordion content without unmounting it when the accordion closes.
Who does this impact? Who is this for?
Mounting components is an expensive operation and in large accordions the performance impact is visible. I have an accordion that takes 50ms+ to render when all items are opened at once. Leads to sub-optimal UX.
It also negates the benefits of memoization. Using memoized components the entire accordion only takes ~2ms to render on subsequent re-renders, but closing and opening a single item takes 10ms+ due to the content being unmounted.

Is there already a solution for this?

I am also wondering about this!

I'm just going to leave this here 🚀
NextJS + Stitches including sever side rendering with keeping mounted Accordion Content
https://codesandbox.io/p/devbox/stitches-radix-accordion-ryr2ld

Duplicate of #1155


feat: Fix integration test

In roll-up mode:

In validium mode:

Careful with the changes in chain.toml and eth_sender.toml, it seems that it was not formatted with zk fmt

Fixed!

We have changed the COMPUTE_OVERHEAD to be changeable because it was not passing the tests in Rollup, it was one of the first fixes we made (it fixes a bug in the web3 suite, from the gas difference).
We have also optimized the "updateConfigFile()" function to be of complexity O(n+m) instead of O(m·n), where "m" is the number of parameters and "n" is the number of lines in the configuration file.


Sarkar/dyn prompt

What does this PR do?

Fix issue when prompt_len is a multiple of bucket
add --simulate_dynamic_prompt, which lets us simulate dynamic input. adjust_batch function adjusts the batch lengths based on inputs from --simulate_dynamic_prompt
Add appropriate warmup for dynamic inputs based on min and max of --simulate_dynamic_prompt
add --reduce_recompilation for extra optimizations for time-to-first-token in dynamic case. This does the following optimizations:

Preprocess on CPU (pad on CPU)
compute position_idx on CPU

Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

closing in favor of https://github.com/huggingface/optimum-habana/pull/543


Could not codesign

Renaming bundle so it reloads..
rm -rf "/Users/xiamin/mishios/iOSInjectionProject/build/Debug-iphoneos/InjectionBundle11.bundle" && cp -r "/Users/xiamin/mishios/iOSInjectionProject/build/Debug-iphoneos/InjectionBundle.bundle" "/Users/xiamin/mishios/iOSInjectionProject/build/Debug-iphoneos/InjectionBundle11.bundle"
Codesigning with identity 'iPhone Developer: maojian fu (UCB7WMMUAC)' for iOS device
iPhone Developer: maojian fu (UCB7WMMUAC): ambiguous (matches "iPhone Developer: maojian fu (UCB7WMMUAC)" and "iPhone Developer: maojian fu (UCB7WMMUAC)" in /Users/xiamin/Library/Keychains/login.keychain)

*** Could not codesign as 'iPhone Developer: maojian fu (UCB7WMMUAC)': /Users/xiamin/mishios/iOSInjectionProject/build/Debug-iphoneos/InjectionBundle11.bundle

 at /Users/xiamin/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/common.pm line 57.
	main::error('Could not codesign as 9hone Developer: maojian fu (UCB7WMM...') called at /Users/xiamin/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/injectSource.pl line 508
 Bundle build failed ***

Please see https://github.com/johnno1962/injectionforxcode/issues/41

ok


Failed to sync gradle project

@henrytao-me i am unable to sync my gradle with your repository.
my design support and appcompat support version is 24.1.1

Hi @sgaikar1
Can you send your gradle file here? Also, please check if you uncheck offline work in Gradle settings (Android Studio preferences).

@henrytao-me i got issue which is allready in your closed topics.. i need to use your library with version <IP_ADDRESS>

I see. You can also try this build
compile "me.henrytao:smooth-app-bar-layout:<IP_ADDRESS>

thanx i will update it in my gradle.. and your help is much apreciated.. thank you :)


Update test-dplyr.R

Possible typo in the test for the filter() implementation. Original version compared two identical filtering expressions involving the local data frame iris with no reference to iris_tbl in Spark. Using nrow() instead of the Species value for the comparison to avoid converting between factor/string and data.frame/tibble within the test, output should be "1" in both cases.

Following up with https://github.com/rstudio/sparklyr/pull/2069


Tensorboard URL for visiting

Run last week into the 'issue' that one of the users tried to go to http://<IP_ADDRESS>:6006 as instructed on the command line.
$ python tensorboard.py --logdir ~/tmp/logs/
Starting TensorBoard b'23' on port 6006
(You can navigate to http://<IP_ADDRESS>:6006)

Modified the message that if FLAGS.host is <IP_ADDRESS> it identifies the correct IP-address for showing in the message (in this case the local-IP is <IP_ADDRESS>)
$ python tensorboard.py --logdir ~/tmp/logs/
Starting TensorBoard b'23' on port 6006
(You can navigate to http://<IP_ADDRESS>:6006)

Can one of the admins verify this patch?

|I signed it!|
Op 21-08-16 om 12:17 schreef googlebot:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project. Before we can look at
your pull request, you'll need to sign a Contributor License Agreement
(CLA).
📝 Please visit https://cla.developers.google.com/ to sign.
Once you've signed, please reply here (e.g. |I signed it!|) and we'll
verify. Thanks.

If you've already signed a CLA, it's possible we don't have your
GitHub username or you're using a different email address. Check
your existing CLA data https://cla.developers.google.com/clas
and verify that your email is set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
If you signed the CLA as a corporation, please let us know the
company's name.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/pull/3946#issuecomment-241249326,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGwylexxcg4oLkzApWx0p4xcOS3j8p3Rks5qiCWygaJpZM4JpRH-.

@tensorflow-jenkins test this please

@danmane this looks fine to me. OK to merge?

Yup! Thanks for the PR @paderijk!

@danmane you're welcome!
Will definitely look if I can contribute in the future more code/modifications.


Add video stop on marker being lost

⚠ All PRs have to be done versus 'dev' branch, so be aware of that, or we'll close your issue ⚠
What kind of change does this PR introduce?
New PR on correct branch.
Adding a event to stop and reset video on marker lost within videohandler
Can it be referenced to an Issue? If so what is the issue # ?
How can we test it?
Scan a marker with video playing, move away from marker so video disappears and then rescan marker
Summary
This is purely to expand on the videohandler component to handle the video being lost to stop and reset
Please TEST your PR before proposing it. Specify here what device you have used for tests, version of OS and version of Browser

It's ok! Thank you for contribute :)


Add primary grid lines to the 2D editor

A "primary" line is drawn every 8 steps, which makes it easier to measure distances for snapping. Let me know if the effect is too strong (or too subtle) :slightly_smiling_face:
This also refactors the method for better readability.
Preview
Before

After

Edit: The primary grid step is now configurable in the Configure Snap dialog:

Looks nice.  I second the remark about having it configurable.  It really depends on what kind of units one is working with.  It can change from project to project or even problem to problem.

Gave it some light testing.  Appears to be working as intended.

Looks good to me :)
CC @groud to review CanvasItemEditor and @YeldhamDev who might have comments on how the "Primary Line Every" configuration should be presented (e.g. with trailing :, maybe making "steps" the unit of the SpinBox instead of a label?).

Looks good to me. I did not go into the details but I don't think it should break anything.
Good job! ^^

Let's merge and if the config setting needs editing, this can be in a follow up PR.

who might have comments on how the "Primary Line Every" configuration should be presented (e.g. with trailing :, maybe making "steps" the unit of the SpinBox instead of a label?).

Yep, sadly, got too late here to say that. @Calinou, those modifications would be nice.


[WIP] Add mypy stubs (Fixes #240)

Thanks for taking the time to contibute to this project.
Checks
Before you go any further, please make sure that you have read the contributing guidelines, run the test suite and that your clone of this repository was taken after 18 October 2018.  (I had to fix up the git history and so clones before that date will have all sorts of merge issues).
Now please delete this pre-amble section and fill in the rest of the template...
Issues fixed by this PR

#240

What does this implement/fix?
This PR:

Adds stubgen-generated stubs for the following libraries:

future

Adds missing typehints that mypy complains about

Any other comments?
This is a WIP

Coverage remained the same at 97.284% when pulling 68d9c1699763eb283ada3394fdfc4390d9fa5a3b on JPTIZ:typehints into 4ae88c6684599e07766e8bfddce9cdb8f44f9e33 on peterbrittain:master.

Coverage remained the same at 97.284% when pulling 68d9c1699763eb283ada3394fdfc4390d9fa5a3b on JPTIZ:typehints into 4ae88c6684599e07766e8bfddce9cdb8f44f9e33 on peterbrittain:master.

I don't think we should be adding future stubs to asciimatics...  Have you offered them to the future package maintainer instead?

I don't think we should be adding future stubs to asciimatics...  Have you offered them to the future package maintainer instead?

Looks like they might be amenable....  https://github.com/PythonCharmers/python-future/issues/490

Looks like they might be amenable....  https://github.com/PythonCharmers/python-future/issues/490

I don't think we should be adding future stubs to asciimatics... Have you offered them to the future package maintainer instead?

Hm, didn't think about that. That could be a solution, yes. I also agree that having the stubs in our repo wouldn't be very nice.

Looks like they might be amenable.... PythonCharmers/python-future#490

Indeed haha. Time to solve a 1 and a half year old issue. Ok, so I'll send them a PR and, in the meanwhile, solve other things with this one.
Would you recommend me to send PIL a similar PR? Since Mypy complained about stubs for it as well. They also have an open issue for that: https://github.com/python-pillow/Pillow/issues/2625.

I don't think we should be adding future stubs to asciimatics... Have you offered them to the future package maintainer instead?

Hm, didn't think about that. That could be a solution, yes. I also agree that having the stubs in our repo wouldn't be very nice.

Looks like they might be amenable.... PythonCharmers/python-future#490

Indeed haha. Time to solve a 1 and a half year old issue. Ok, so I'll send them a PR and, in the meanwhile, solve other things with this one.
Would you recommend me to send PIL a similar PR? Since Mypy complained about stubs for it as well. They also have an open issue for that: https://github.com/python-pillow/Pillow/issues/2625.

Yeah - it looks like they also ground to a halt.  Might be worth pointing out that type stubs can now be used in the package according to https://www.python.org/dev/peps/pep-0561/

Yeah - it looks like they also ground to a halt.  Might be worth pointing out that type stubs can now be used in the package according to https://www.python.org/dev/peps/pep-0561/


april entity mapping updates diana p3

Required items, please complete
Change(s):

removing custom entity mapping

Reason for Change(s):

general efforts towards improving entity mapping amongst detections

Version Updated:

yes

Testing Completed:

yes

Checked that the validations are passing and have addressed any issues that are present:

will do

Hi @ddamenova, could you please resolve branch conflicts. Thanks

Hi @ddamenova please resolve branch conflicts to proceed further. Thanks.

Hi @ddamenova @mmelndezlujn could you please resolve branch conflicts. Thanks.


[html] Hide the line of the html close tag

let

    hello world

become

   hello world

or show with a blur color(gray?)
it will bring editor very clean.

Showing with a different color is something you could do through an extension. Hiding is more difficult. Would this be like folding? We don't support such kind of folding.

duplicate of #24515


Route policy rules are not added on boot in debian-like distros

Route policy rules are not added on boot in debian-like distros.
Having route policy rules configured is vital for instances with multiple network interfaces, because rules specify which routing table will be used for sending response traffic based on dst ip of incoming traffic. If route policy rules are not configured, traffic coming to all interfaces is being sent through the primary interface according to default route in main table, and this leads to a lack of connectivity.
Expected behavior:
Route policy rules for non-primary interfaces are being added on boot.
Actual behavior:
Route policy rules are not added.
This behavior is caused by udev rule running script for adding route policy rules before the primary interface is configured. Primary interface should be configured before the script runs, because script relies on EC2 metadata, which is not available unless primary interface is up.

#2 fixes this issue

Fixed in https://github.com/C2Devel/c2-ec2-netutils/pull/2


Request for FAQ: what licenses does Flutter use, and how can I find the list for myself?

Tracking issue for new FAQ entry.

i gave a couple of answers to this on stack overflow which you can crib

See PRs:
https://github.com/flutter/website/pull/327
https://github.com/flutter/website/pull/330


High precision sum fix

Currently, util.high_precision_sum always casts to jnp.float64, even if it is summing over an array of integers or complex floats. In this pr, util.high_precision_sum using jnp.issubdtype to check if the array is any int, float, or complex float, and chooses the proper type to upcast to accordingly.
To ensure backwards compatibility for weird dtypes, the array is always promoted to float64 unless it is an int or complex float.

Awesome, thanks for the nice contribution Carl!


Check if 404_override controller is in a subfolder

If $route['404_override'] is set to a controller that is in a subfolder it will not be found. This changeset will also check if controller filename exists in application/controllers/class/class.php.
Per the user guide, controllers maybe placed in a subfolder of the same name inside of the application/controllers folder.

I refactored some more of the code to match the first two segments to see if it can find the class/method using the pattern show in the user guide.
404_override routes like will now load as:
products -> application/controllers/products.php (method: index)
products/sitemap ->application/controllers/(products/)products.php (method: sitemap)
products/shoes -> application/controllers/products/shoes.php (method: index)
products/shoes/sitemap -> application/controllers/products/shoes.php (method: sitemap)

I agree with CroNiX. I actually also added a pull request fixing this, but just used a redirect to the path specified in the 404_override parameter. This was because HMVC can involve routing to be done foreach module as well, so for instance a module has config/routes.php, plus it also adds a more flexibility. But I closed it since a redirection is not sufficient and you have no chance of making a fall back if the specified path does not exist, resulting in an endless loop.

I know there is HMVC lite in one of the branches, but until that is merged into the develop branch the 404 controller path should be the same as all other controllers or documented as such. When that feature becomes available this code will need one more path check to for the controller.
I stumbled upon this by a lengthy forum thread trying to help a user figure out why their 404 controller was not being called. It was because of this issue of the controllers being organized in subfolders, CI was not finding it /application/controllers.

But what about checking if config/routes.php exists in the subfolder, and if so check if there is a route for this controller/method? This way there is no need to update the code when the feature becomes avaliable. Also, people using this already will have a benifit of this - I know I would.
I noticed you count the segments of the path and cut off if it's more than 2. Instead, you could add a limit to your explode.
Also, how come your last commit code is in the "Load the local application controller" section?

The code only changes the behaviour of the the default 404 override. The routes are already handled by code above this block. If a routes file is being loaded from a subfolder then that should be handled in that section of code. This block is for finding the controller file from was is determined by the Router class.
The last commit is still in the same block around line 248 and the explode needs the third segment in case a folder/class/method is given the 404 route. I removed the third value after referencing it so it didn't cause any issues later. The block of code is being added to that section because that is where the error is thrown by CI if the file path cannot be determined.


test: cmd/cli/trafficpolicy_check.go

In cmd/cli/trafficpolicy_check.go an anonymous function does not have good unit test coverage. It would be great to write a small test for this function.

ref #1489


How to self-host it on my server (Vultr, GCP etc)?

Very an awesome project.
But is there any guide on how to self-host on my server?
Thanks

@cnscorpions If you see the release script, you can get plenty of information on how to build the project. Here is the build output. You can deploy the dist directory to your server and run it using CRON jobs.

Thanks, I'll try it later.


Setting the same number does not update the component

[x] I have searched existing issues
[x] I am using the latest multi slider version

If you have validation rules in place it may happen that you set the same value as the previous one, but since the UI does not reflect it the component needs to be updated. Unfortunately that doesn't happen and it skips the update.
<MultiSlider
  values={[requiredLevel[0], requiredLevel[1]]}
  sliderLength={viewWidth * 0.9}
  onValuesChangeFinish={([min, max]) => {
    let allowedMin = min < userLevel ? min : userLevel;
    let allowedMax = max > userLevel ? max : userLevel;
    if (allowedMax - allowedMin < 2.5) {
      allowedMax = allowedMin + 2.5 < 10 ? allowedMin + 2.5 : 10;
      allowedMin = allowedMax - 2.5;
    }
    setRequiredLevel([allowedMin + 0.001, allowedMax + 0.001]);
  }}
  min={0}
  max={10}
  step={0.1}
  snapped
  enableLabel
/>

You can force this by setting a key={random} a regular react feature. That will nuke the component.


[HUDI-5336] Fixing log file pattern match to ignore extraneous files

Change Logs
GCS might create some marker files for log files created by hudi. While constructing the file groups w/ log files, we should ignore such files. Format of those marker file is "GCS_SYNCABLE_TEMPFILE" + [LOG_FILE_NAME]. Eg: "GCS_SYNCABLE_TEMPFILE.files-0000_20230104082331173001.log.10_0-52-553.1.8170c3dc-f1f0-474f-aabf-b53a474aa18d".
We did make an attempt to fix before, but looks like the file pattern is different. So, have made the pattern match more strict.
This patch fixes the Log file pattern match to ensure we ignore such extraneous files.
Impact
Queries and compaction may not fail occationally.
Risk level (write none, low medium or high below)
low.
Documentation Update
Describe any necessary documentation update if there is any new feature, config, or user-facing change
N/A
Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

Failed due to flaky flink IT test


Support pagination when listing uploads

The current `uploads list' command will not scale for 100,000+ uploads. Keep in mind that a single Cloud Functions HTTP response must be <10MB.

There should be a distinction between listing all uploads with all file contents, vs listing uploads with just their metadata (and list metadata only should be the default)
There should be a pagination mechanism in the backend API
There should be a search mechanism; search in metadata? search among files?

There is now pagination. This is used by both the CLI tool and the UI. That takes us some way toward this goal.
Search (aka filtering), and choosing not to include file details in upload response, are both left for another time.


gitignore docs folder

Because Travis autobuilds + pushes docs we can gitignore this so that
we don't have to have doc commits

Just kidding, we just want to delete the build folders.


Fixed comments by @tg-msft on APIView

APi View: https://apiview.dev/Assemblies/Review/4200a804f382479bb4d2bb4a3323b8c7

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Developer.LoadTesting


⚠ BCR Bot has degraded performance

In cac88fc, BCR Bot (https://bcr.alternativasinteligentes.com/BCRApi/web/chatbot) experienced degraded performance:

HTTP code: 200
Response time: 823 ms

Resolved: BCR Bot performance has improved in 521396e.


Set Selected date

I must comment this is a great one. However I am trying to set the selected date to a time (using timezone- selectTime doesn't work either...);
what method do I use for that, selectDate does not do the job.
Thanks in advance
Hanna

For me, the day, and hour work fine, but minutes are not set by using .selectDate();

Try your time step for your picker. I sow code which is time is not fit to step - picker use 00 for minutes.


✨ feat: Implemente email authentication

Pull Request Test Coverage Report for Build #136
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.7%) to 95.699%

Totals

Change from base Build #132:
0.7%

Covered Lines:
356

Relevant Lines:
372

💛  - Coveralls


[Python] Pyarrow Table.pylist doesn't release memory untill the program terminates.

Describe the bug, including details regarding any error messages, version, and platform.
Hi,
I have been using pyarrow Table.from_pylist to convert a list to a pyarrow table and i have observed that the memory allocated by parrow doesn't get released until the program terminates (especially for linux os). My use case often involve long running processes and it is creating a problem.
Sample script to reproduce the problem. I have used memray to profile and check the memory usage.
#file_name: test_exec.py

import pyarrow as pa
import time
import random
import string

def get_sample_data():
    record1 = {}
    for col_id in range(15):
        record1[f"column_{col_id}"] = string.ascii_letters[10 : random.randint(17, 49)]

    return [record1]

def construct_data(data):
    count = 1
    while count < 10:
        pa.Table.from_pylist(data * 100000)
        count += 1
    return True

def main():
    data = get_sample_data()
    construct_data(data)
    print("construct data completed!")

if __name__ == "__main__":
    main()
    time.sleep(180)

Steps to reproduce it,
You can either run python -m memray run test_exec.py and check the flamegraph generated from the results. Or run the program and monitor the process using top ... this is but unintuitive
I have also checked the documentation and realised that there are different memory pool options can be used by setting an environment variable ARROW_DEFAULT_MEMORY_POOL to either jemalloc, mimalloc or system and i have tried all of them in both macOS and linux but I could see minor improvements on macOS but I couldn't see differences irrespective of the memory pool configurations on linux.
ARROW_DEFAULT_MEMORY_POOL=jemalloc / OS: macOS / Pyarrow version: 12.0.0

ARROW_DEFAULT_MEMORY_POOL=jemalloc / OS: linux / Pyarrow version: 12.0.1

ARROW_DEFAULT_MEMORY_POOL=mimalloc / OS: macOS / Pyarrow version: 12.0.0

ARROW_DEFAULT_MEMORY_POOL=mimalloc / OS: linux / Pyarrow version: 12.0.1

ARROW_DEFAULT_MEMORY_POOL=system / OS: macOS / Pyarrow version: 12.0.0

ARROW_DEFAULT_MEMORY_POOL=system / OS: linux / Pyarrow version: 12.0.1

It will be really helpful if someone can highlight whats happening or suggest any approaches to eliminate this problem on linux. Highly appreciate your efforts on this issue.
Component(s)
Python

I'm not entirely sure what you are expecting and I don't think from_pylist is to blame.  Debugging memory usage like this is pretty complex.  First, just importing the code and running it through the first time is going to load various shared objects, etc. into RSS.  To see this effect we can seed the program by creating a single row first.  I'm also going to run construct_data three times in a row.

Now, we see that from_pylist (the zig-zag parts) doesn't create much more additional RAM, but it also doesn't appear to immediately release it.  In fact, it could almost look like it is leaking a bit of memory each time.  However, if we run construct_data more times we can see that this isn't actually leaking.
What is happening is that pyarrow is returning the memory back to the allocator (in these graphs I was using the system allocator so we are returning the memory to malloc).  However, the allocator is not releasing this memory to the OS.  This is because obtaining memory from the OS is expensive and so the allocator tries to avoid it if it can.

We can verify this by printing pa.total_allocated_bytes().  This tells us how much memory is allocated and not returned to the OS.  We can see that this is always 0.
Finally, there is a method we can call, mainly for debugging purposes, to ask the allocator to return the memory to the OS.  What this actually does under the hood depends on the allocator.  For malloc, this triggers a call to malloc_trim.
If we use release_unused then we see the RAM is returned to the OS after each call to construct_data.

Updated example demonstrating some of these things.
import pyarrow as pa
import time
import random
import string

def get_sample_data():
    record1 = {}
    for col_id in range(15):
        record1[f"column_{col_id}"] = string.ascii_letters[10 : random.randint(17, 49)]

    return [record1]

def construct_data(data, size):
    count = 1
    while count < 10:
	pa.Table.from_pylist(data * size)
	count += 1
    return True

def main():
    data = get_sample_data()
    construct_data(data, 1)
    print(f"initial seeding complete! total_allocated_bytes={pa.total_allocated_bytes()}")
    time.sleep(10)
    construct_data(data, 100000)
    pa.default_memory_pool().release_unused()
    print(f"construct data completed! total_allocated_bytes={pa.total_allocated_bytes()}")
    time.sleep(10)
    construct_data(data, 100000)
    pa.default_memory_pool().release_unused()
    print(f"construct data completed! total_allocated_bytes={pa.total_allocated_bytes()}")
    time.sleep(10)
    construct_data(data, 100000)
    pa.default_memory_pool().release_unused()
    print(f"construct data completed! total_allocated_bytes={pa.total_allocated_bytes()}")

if __name__ == "__main__":
    main()

Hi @westonpace ... thank you so much for your inputs and time. total_allocated_bytes() seems to be producing 0 even for all my tests as well. We can close this issue.


Add a file type to check if a path is new without checking if its parent exists

Initial Checks

[X] I have searched Google & GitHub for similar requests and couldn't find anything
[X] I have read and followed the docs and still think this feature is missing

Description
Hello,
I am using Pydantic to validate some path the user is supposed to give:
from pydantic import BaseModel, FilePath, DirectoryPath, NewPath

class Inference(BaseModel):
    in_data: DirectoryPath
    out_data: NewPath
    model_path: FilePath

However, a validation error will be thrown if the user wants to create an entire new tree.
Proposal
The already existing NewPath checks that the path does not exist but its parent does exist. A type that only checks for the first condition would be great.
Here is my code to add this type if anyone is interested:
def new_path_and_parents(path: Path) -> Path:
    "Check if a specified path does not already exist"
    assert not path.exists(), f"{path} already exists"
    return path

NewPathAndParents: TypeAlias = Annotated[Path, AfterValidator(new_path_and_parents)]

Non relevant additional proposal
I also had the intention to suggest an annotation to create a folder directly so that if the folder is new, it is created. But because Pydantic validation happens all at once, if a validation fails, the folder would still be created and NewPathAndParents would fail at the next run. Here is the implementation if anyone wants it:
def create_folder_and_parents(path: Path) -> Path:
    path.mkdir(parents=True, exist_ok=True)
    return path

CreateFolder: TypeAlias = Annotated[Path, AfterValidator(create_folder_and_parents)]

Affected Components

[ ] Compatibility between releases
[ ] Data validation/parsing
[ ] Data serialization - .model_dump() and .model_dump_json()
[ ] JSON Schema
[ ] Dataclasses
[ ] Model Config
[X] Field Types - adding or changing a particular data type
[ ] Function validation decorator
[ ] Generic Models
[ ] Other Model behaviour - model_construct(), pickling, private attributes, ORM mode
[ ] Plugins and integration with other tools - mypy, FastAPI, python-devtools, Hypothesis, VS Code, PyCharm, etc.

Thanks moving the issue
It is similar in the fact that it is about paths, but it is a new type that has not been suggested in #149 .


Feature request

Would it be possible to add an extra step into the build process like you have do with autoprefixer?
The process is combining media queries. There are a few node modules out there that do this for you, and example of which is gulp-combine-mq.
Why? Well it's more efficient to have all of your media queries in one place, however when maintaining a large site it's easier to write these media queries in individual partials.
Here is an example of how I tend to write my queries (I also use sass-mq, but that is our of scope here).
.parent {

  .child {
    width: 100%;

    @include mq($from: desktop) {
      width: 50%;
    }

    .another-child {
      background: hsl(0, 0, 25%);

      @include mq($from: tablet) {
        width: 75%;
      }
    }
  }
}

Interesting thought. Meteor are currently looking at adding this support into their package/assets pipeline, so I'm not prepared to put too much time into building such a feature. If you'd like to have a go though, I'd happily accept pull requests.

Although the new build system is still too limiting, this should be handled outside of the sass/scss package since IMO we should only do sass/scss and not support every css-related gulp plugin.

Agreed. I've started to move build processes like these outside of Meteor, here's an idea of what I'm doing now.

Well, if Meteor would allow chaining of compilers / processors, then I think the meteor build system wouldn't be too bad and able to cover quite a lot of cases. But for now I also have a gulp process next to the meteor build system.


feat: add pkce flow support

What kind of change does this PR introduce?
PKCE flow is a secure way of performing OAuth on a mobile app. Specifically, it prevents attacker from performing authorization code interception attack.
The GotrueClient can now be initialized with a flowType parameter, which can take value of AuthFlowType.implicit or AuthFlowType.pkce. When setting the flowType to pkce, asyncStorage also needs to be provided, which is used to store the pkce code verifier (essentially a randomly generated string).
final gotrueClient = GoTrueClient(
  url: gotrueUrl,
  flowType: AuthFlowType.pkce,
  asyncStorage: TestAsyncStorage(),
);

When GotrueClient is initialized with flowType of pkce, a codeChallenge will be passed as query parameters for sign-in flows that involve deep links, such as magic link sign in or OAuth. Once the user comes back to the app via deep link, no access token or refresh token is contained in the URL, but instead there is the code challenge. The client then sends the code verifier and the code challenge via exchangeCodeForSession() method to the Gotrue server to verify it, and returns a session securely.
The process of calling the exchangeCodeForSession() method will be handled automatically in the background by supabase_flutter just like it does for the current deep link handling.
In future major version update, we will remove implicit grant flow and use pkce for all OAuth logins.
Once this PR is merged, these PRs on supabase-dart and supabase-flutter will be merged.

https://github.com/supabase/supabase-dart/pull/190
https://github.com/supabase/supabase-flutter/pull/432

Related gotrue-js PRs

https://github.com/supabase/gotrue-js/pull/591
https://github.com/supabase/gotrue-js/pull/636
https://github.com/supabase/gotrue-js/pull/637
https://github.com/supabase/gotrue-js/pull/641

Yeah, since it involves a redirect, it's kind of hard to do a through testing.


feat: kustomize and apply resource

support kustomize and apply resource.

Thanks @lyzhang1999! As a first-time contributor, allow me a quick reminder to follow the guidelines:

Contributing to Dagger
Package Coding Style

Here we are! LGTM 🚀
Fix linter errors and after another approval we will merge it

done


/usr/local/bin/croutonclip: 269: /usr/local/bin/croutonclip: xsel: not found

I've run into this issue when trying to copy/paste in crouton on a new system:
https://github.com/dnschneid/crouton/issues/3538

One solution is to install xsel  (github repo is here)

I managed to install xsel with the following commands:
> aclocal
> autoconf
> automake --add-missing
> ./configure
> make
> make check
> sudo make install

Running into this on the Chromebook Flip. These instructions helped.


docs: multi worker guide

Guide on how to setup multi worker

set fluentdSpec.workers
set fluentdSpec.rootDir: '/buffers'
use fluentdSpec.bufferStorageVolume.pvc storage backend
more to add?

I encountered the same problem, some output plugins do not support multiple workers, cause exception
2023-09-11 07:43:27 +0000 [error]: config error file="/fluentd/etc/fluent.conf" error_class=Fluent::ConfigError error="buffer path is not configured. specify 'path' in "
I found the same problem before, but it did not solve the problem that some output plug-ins do not support multi-process workers.
https://github.com/kube-logging/logging-operator/issues/513


arduino compiler error - type uart_sclk_t not found

Using latest ardunio 1.8.15 and esp1.0.6 code
compiler error, type uart_sclk_t not found
readded your prevoius verson code to dmx_types.h file.
Now compiles, hopefully will be testing DMX output to uart2 soon.

// TODO: is this code defined somewhere in Arduino?
#ifdef ARDUINO
typedef enum {
UART_SCLK_APB = 0x0,            // UART source clock from APB
UART_SCLK_RTC = 0x1,            // UART source clock from RTC
UART_SCLK_XTAL = 0x2,           // UART source clock from XTAL
UART_SCLK_REF_TICK = 0x3,       // UART source clock from REF_TICK
} uart_sclk_t;
#endif

Thanks for the feedback!
This library requires the latest Arduino-ESP32 framework which is v2.0.0, not v1.0.6. The reason for this is because v2.0.0 supports the ESP32, the S2, and the C3 whereas v1.0.6 does not.
For instructions on how to get the latest version of the Arduino-ESP32, check out the readme. Tutorials like this one are no good because they don't allow you to install v2.0.0.
Alternatively, if you really need to stay on Arduino-ESP32 v1.0.6, you can try cloning the Arduino-v1.0.6 branch and using that instead.

Had same issue as OP -- Updated to 2.0.0 as per instructions and I am now able to compile and execute.  Thanks


Fix NSInternalInconsistencyException in - [ARHeroUnitViewController updateViewWithHeroUnits:], line 111

Version: 2.3.3 (2016.01.13) | net.artsy.artsy
Stacktrace
ARHeroUnitViewController;updateViewWithHeroUnits:;ARHeroUnitViewController.m;111
ARHeroUnitViewController;handleHeroUnits:;ARHeroUnitViewController.m;96
ARHeroUnitsNetworkModel;getHeroUnitsWithSuccess:failure:;ARHeroUnitsNetworkModel.m;53
Reason
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'No view controller managing visible view <UIView: 0x13882ee60; frame = (0 0; 375 667); autoresize = W+H; gestureRecognizers = <NSArray: 0x137735590>; layer = <CALayer: 0x1388158d0>>'
Link to HockeyApp

https://rink.hockeyapp.net/manage/apps/37029/crash_reasons/103192530

@orta Any thoughts from the top of your head on this one?

No

I managed to reproduce this, when I was grabbing and dragging between hero units. Can't do it a second time though.

Closed as per #1005.

@orta Wait, is that crash really related to this? And so is this crash not really fixed, as indicated in #1005.

Not fixed, I just managed to reproduce it somehow

We’ll be removing hero units soon anyways, so closing.


Missing build-image.sh files

A few points that I would like to seek answers to.

According to the README, there were 2 files under 2 directories to build. Those 2 are missing.

cd build/app/code-base
./build-image.sh

cd build/app
./build-image.sh

Also, You didn't mention how to use build-deploy-app.sh, and build-image-base.sh. The files are self-descriptive, but I would like to seek clarification on how to properly utilize them through an updated README.

in the build/app/Dockerfile on line 3-4

FROM app-base:latest
LABEL maintainer="gavin"

Is that your docker public repository or is it a result of using the build-image-base shell script? I created a build-image.sh script, but could not generate because app-base is a private repository OR is it a local repository based on the build-image-base.sh script?
It clearly has the docker build -t app-base . command on line 21.
I am confused.
I look forward to your answers.

For the answer to both 1 and 2:
I wrote README.md as a guide for cleaning up the repository before the initial github commit and this observation is just an oversight. Thank you for pointing it out.
To fix this I've consolidated both to one file. Deploying manually is just one additional command after building - docker stack deploy .......
README.md now only shows this:
cd build/app
./build-image.sh

For number 3:
This is not my public repository, but it is the result of building the app image from a base as you noted. I did this as a shortcut during initial development to constantly deploy new code changes quickly.
Note:
In the near future I will be updating a few things, of those things includes the addition a multi-stage docker build for the app. Before this point I will make a release.

Thank you for the response. I played around with the application for the last couple of days. Got stuck a couple of times. I am close to getting the local setup up and running.
Some points..
I figured out that the opt/ path you are suggesting is the same directory at the bottom of the README "Additional notes". I think for the sake of consistency you should duplicate the same path pattern. Just a suggestion.
When you make a new release, can you expand on the local development setup? I played around with OpenSSL and I'm very close to getting the local install up and running. Per your suggestion, I will do some editing on fe-custom and nginx.conf and figure out how to properly have the self-signed certs transferred to my local server.  Any suggestions, I would appreciate it. My contact is on my page.
Finally, I added another bash script a level below the build/ so I don't have to cd into each directory to execute the build.
Simple echo statements.
$ build/build-each-image.sh
echo "[building each image]"
echo
    cd fe
    ./build-image.sh
echo
echo
    cd db
    ./build-image.sh
echo
echo
    cd cache
    ./build-image.sh
echo
echo
    cd mail
    ./build-image.sh
echo
echo
    cd app
    ./build-image.sh

Thanks again for an amazing starting point.

Thanks again, I updated the README.md to align with the consistency you've suggested.
For the build script that is a good idea if you want to build everything at one time. I was thinking one might review and edit the image build if need be, one at a time. And I expected one would usually want to edit the app build only.
For the certificate issue, it's likely you only need to have a cert file and key file specified in docker-compose.yml. If you do have a special scenario for your desired frontend, you only need to create a volume entry for an edited nginx.conf OR build fe-custom with your edited nginx.conf.

Oh, I see your point (re: build script). Also, thank you for the sound advice on the certificate. I will close this issue. If I have a pull request/issue, I will open another one.
Thanks again!


[FEATURE] Remove default favorites feature

University 20230628 I am back / 2023-06-30
1.2 I can't remember if you did this, but we want new users to have a blank favorites panel apart from the tutorial at the top and an Illini ID etc widget if relevant.
MV: This is the first time I hear about this. When we did the Favorites panel JP devised a complex model for default favorites content based on user roles, groups (GIES, etc.) and even location (in/out campus)! BTW, this significantly complicated the FlexUI service but we hooked this up. So, please confirm if you really want me to remove all this stuff completely.
University Monday 2023/07/03 / 2023-07-03
1 Misho, Blank Favorites panel apart from the tutorial at the top and an Illini ID etc widget if relevant. JP and I agree that we will no longer use any complex logic. The logic/rules could remain just using the Illini ID etc, this way it's archived in GIT.
Linked to rokwire/illinois-app#3346

University Monday 2023/07/03 / 2023-07-04
1.1 On the Blank Favorites panel. As an existing user with favorites when I ran today's version all my favorites were gone. I also did not see an Illini widget which I was expecting to see. Only new users should see empty favorites with illini widget if appropriate.


[HUDI-6033] Fix rounding exception when to decimal casting

Change Logs
Fix rounding exception when there's a loss in precision while performing a XXX to DECIMAL(p, s) unsafe casting where a loss in scale is used.
For stacktrace and detailed explanation of why HALF_EVEN and special cases where HALF_UP rounding scheme was used, please refer to the JIRA ticket here: HUDI-6033
Impact
None
Describe any public API or user-facing feature change or any performance impact.
Risk level (write none, low medium or high below)
None
If medium or high, explain what verification was done to mitigate the risks.
Documentation Update
Describe any necessary documentation update if there is any new feature, config, or user-facing change

The config description must be updated if new configs are added or the default value of the configs are changed
Any new feature or user-facing change requires updating the Hudi website. Please create a Jira ticket, attach the
ticket number here and follow the instruction to make
changes to the website.

Contributor's checklist

[ ] Read through contributor's guide
[ ] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

@xiarixiaoyao Can you please help to review this?
Thank you!

@voonhous
thanks for your contribution.
looks good.  only a question,  In this scenario where conversion loses accuracy, should we force the conversion or just throw an exception to remind the user

@xiarixiaoyao
For conversions that loses accuracy, this really depends on the data that's in the table.
I do not think a check on all existing data is feasible. i.e. checking all existing data to ensure that there is no loss in accuracy, and if there is one, we will need to throw an exception to prevent the ALTER TABLE CHANGE COLUMN TYPE DDL to fail.
As such, I believe we will need to document this potential loss in accuracy to remind users of such a behaviour.

@xiarixiaoyao
For conversions that loses accuracy, this really depends on the data that's in the table.
I do not think a check on all existing data is feasible. i.e. checking all existing data to ensure that there is no loss in accuracy, and if there is one, we will need to throw an exception to prevent the ALTER TABLE CHANGE COLUMN TYPE DDL to fail.
IIUC, the only time we can perform this check is when we are doing the ALTER TABLE DDL as a DECIMAL -> float/double schema change (reversing whatever is done) is not allowed.
As such, I believe we will need to document this potential loss in accuracy to remind users of such a behaviour.

doc +1

@hudi-bot run azure

@hudi-bot run azure

@hudi-bot run azure

@hudi-bot run azure

@danny0405 Fixed the CI here i forgot to remove a test case that i was using for debugging.
Can we merge this in soon? Thank you!

Let's give a summary about the changes:
float -> decimal: HALF_EVEN
double -> decimal: HALF_UP,

Since SPARK uses HALF_UP rounding when performing a FIX_SCALE_TYPE to DECIMAL casting when there is a lost in scale

Can you show us the code snippet how Spark does this then? Is the Spark behavior a standard that we need to follow?

HALF_EVEN is used OUTSIDE of tests. For example:

I'm talking about Apache Spark, not Hudi.

I'm talking about Apache Spark, not Hudi.

Not very sure about this, but I have yet to encounter a use-case where anything other than HALF_UP was used.

@danny0405 Can you please help to review this PR again? resolved the merge conflicts caused by changes in javadoc.

@hudi-bot run azure


avalon-core debugging failing

If I am in avalon.nuke.lib and try to print some log the behavior is as follows:

print() nothing coming out
log.debug() nothing coming out
log.info() nothing coming out
log.warning() it prints! ��

I presume it works the same in other hosts..
[PYPE-695] created by jakub

fixed during 3.0 development


Add hours-tracker extension

Description

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi there,
There are several time-tracking extensions available. Have you explored any of them before considering this one?
One example is this time-tracking extension. You could also enhance the existing extension or request a new feature.


remove opacity setting from scroll bars

No need for an opacity setting as peniko::Color already support opacity

Optionally the default color could be created using scroll_bar_color: Color::rgb8(0, 0, 0).with_alpha_factor(0.7) but then it isn't all const fn but that probably doesn't really matter

Good as is or should it change?

Sorry for looking at this so late. The opacity was there for the fade out of the scroll bar which isn't implemented yet.

Sorry for looking at this so late.
No worries.

The opacity was there for the fade out of the scroll bar which isn't implemented yet.

Right. But scroll does accept a color for the scroll bar and that color should be what stores the opacity settings and not an extra field. Since peniko Color already supports opacity. This way if you pass in a color with higher or lower opacity it will change how the scroll bar looks which makes sense. Is there any reason to not store the opacity in the color?

Now thinking it again, it makes sense now.


Firewall/Alias: "External (Advanced)" type have no where to input content

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:
✔ I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
✔ I have searched the existing issues and I'm convinced that mine is new.
Describe the bug
I'm attempted to add some external alias but when I selected "External (Advanced)" type, the "Content" field have no way to input anything. There is only a "Clear All" button there.
No javascript warning or error shown in browser console.
To Reproduce
Steps to reproduce the behavior:

Go to 'Firewall/Aliases'
Click on add button
Select type to "External (Advanced)"
You will see there is no way to input for content.

Expected behavior
At least I should have something can do some input.
Screenshots

Relevant log files
(no browser console log were ever produced.)
Additional context
(None)
Environment
OPNsense 19.1.10 (amd64, OpenSSL).
Google Chrome 75.0.3770.100 (release) (64-bit Windows) (cohort: Stable)

What do you want to achieve with it? External is for plugins like nginx.
I think what you want/need is URL Table (IP).

What do you want to achieve with it? External is for plugins like nginx.
I think what you want/need is URL Table (IP).

I want to import a bunch of networks into table but there does not have anyway to direct import them. The default import need a json file, I'm currently using this way to achieve my goal.
There is no document talking about this, so I have no idea what is going on at the begining.
Sorry for the noise. This issue will be closed

Add alias, Type Network, in content field paste a csv list :)

Add alias, Type Network, in content field paste a csv list :)

I tried one network by line and it seems doesn't work.
I converted into json and it works well. Thanks.

csv = comma separated value, but json is also perfectly fine :)


fix send_error_response method signature

Method signature did not match what was expected.

Added fixes for the readme and some json parsing issue.
@keshayad any change you call look at this? been a while


Provider using session platform field

!test

Codecov Report

Merging #260 into master will decrease coverage by 0.09%.
The diff coverage is 69.23%.

@@            Coverage Diff            @@
##           master     #260     +/-   ##
=========================================
- Coverage   58.22%   58.12%   -0.1%
=========================================
  Files          40       40
  Lines        3258     3260      +2
  Branches      391      391
=========================================
- Hits         1897     1895      -2
- Misses       1254     1257      +3
- Partials      107      108      +1

Impacted Files
Coverage Δ

vmmaster/webdriver/helpers.py
61.11% <100%> (+0.24%)
:arrow_up:

core/db/models.py
84.02% <100%> (ø)
:arrow_up:

core/sessions.py
76.87% <100%> (ø)
:arrow_up:

vmmaster/app.py
73.58% <20%> (-1.42%)
:arrow_down:

core/auth/custom_auth.py
65.21% <0%> (-2.18%)
:arrow_down:

vmpool/artifact_collector.py
78.14% <0%> (-1.33%)
:arrow_down:

Continue to review full report at Codecov.

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

!test

!test

!test


[VSCODE] Respect .editorconfig insert_final_newline

Describe the bug
I have insert_final_newline = true in .editorconfig and Prettier mostly respects it in other types of files, but .sql files terminate without a new line.
To Reproduce
Steps to reproduce the behavior:

Add insert_final_newline = true in .editorconfig
Format SQL file

Expected behavior
File to terminate with a system's new line character sequence.
Usage

What SQL language(s) does this apply to? SQL
What VSCode version are you using? 1.77.3
What are your currently configured VSCode settings for the prettier-sql extension, if relevant to the issue? No relevant settings found.

Yeah, unfortunately the name is misleading. This extension really has nothing to do with Prettier.
The sql-formatter command-line tool does insert a newline at the end of its output. The editor plugin probably just takes the output from the library and doesn't add a final newline. Should fix.
I'm also building a new SQL formatting tool that is implemented as a Prettier plugin. It does add a final newline. However the final newline behavior is actually not configurable in Prettier. At least Prettier docs about .editorconfig state that these options can't be configured:
# Non-configurable Prettier behaviors
charset = utf-8
insert_final_newline = true

I see. I will try the new extension. It looks promising, though I would need Postgres syntax.

I've now modified the new vscode-extension to auto-detect whether a newline should be added to the end of the file or not.


docs: update pre commit example

Hi,
I realised that from your release 0.5.0 to 0.6.0 the labels switched from 0.5.0 to v0.6.0.
Therefore, the example pre-commit snippet in the README is still correct, but once somebody wants to go beyond by just updating the number (as I did) they will get an error from pre-commit.
I think it would be nice to update this small section. Here is a suggestion for the fix with the newest snakefmt version.

Additional comment:
Also this link in the changelog is does not do what it is expected to because there is no v0.5.0.

Thanks for this @jpwgnr and for the heads up about the changelog.


Hostname auto-detection not implemented in Kamon Dashboard

Steps to reproduce:
Log into dashboard, by default see "hostname".
Switch to System Metrics, then see my computer name.
The workaround is to copy the computer name exactly as it is shown in the System Metrics dashboard and paste it in over "localhost" in the Kamon Dashboard.

I don't remember what commit actually fixed this, but the very latest published docker image with hash 169e15e33167 has the fix!


(question) Missing package 'af'/libaf when building for F# on a Mac

Hello - I'm presently using FSharp on a Mac, and I've had success previously using ArrayFire libraries in C++, Rust, and Python on this local machine. For my FSharp (dotnet) project I was able to install the ArrayFire dotnet package successfully:
dotnet add package ArrayFire
subsequent App.fsproj:
<ItemGroup>
  <PackageReference Include="ArrayFire" Version="0.0.2" />
</ItemGroup>

However, when running "dotnet run" I get the following build error:
usuario@usuarios-MacBook-Pro ~/u/w/r/h/f/F/s/App (master)> dotnet run
Unhandled exception. System.DllNotFoundException: Unable to load shared library 'af' or one of its dependencies. In order to help diagnose loading problems, consider setting the DYLD_PRINT_LIBRARIES environment variable: dlopen(libaf, 1): image not found
   at ArrayFire.Interop.AFBackend.af_set_backend(af_backend bknd)
   at Program.main(String[] argv) in /Users/usuario/usuario/wpractice/rust/houndnew/fshfe/FSNetCore/src/App/Program.fs:line 11

My libaf dylibs are located at /usr/local/opt/arrayfire/lib, (though I don't know how I might be able to specify that here, in the dotnet build/run stage via terminal).
I've tried setting DYLD_PRINT_LIBRARIES (in fish shell: set -x DYLD_PRINT_LIBRARIES 1) as advised in the error message, and I get a long output of successful "dyld loaded" statements (not including any libaf dylibs), followed by this error which is almost the same as the last:
Unhandled exception. dyld: loaded: /usr/local/share/dotnet/shared/Microsoft.NETCore.App/3.1.12/System.Native.dylib
System.DllNotFoundException: Unable to load shared library 'af' or one of its dependencies. In order to help diagnose loading problems, consider setting the DYLD_PRINT_LIBRARIES environment variable: dlopen(libaf, 1): image not found
   at ArrayFire.Interop.AFBackend.af_set_backend(af_backend bknd)
   at Program.main(String[] argv) in /Users/usuario/usuario/wpractice/rust/houndnew/fshfe/FSNetCore/src/App/Program.fs:line 11

It could very well be an issue more specific to dotnet environments on a Mac (or my own environment configuration), than to ArrayFire itself, so apologies if that's the case. But any insight would be much appreciated, thanks.

Solved --
env DYLD_LIBRARY_PATH=/usr/local/opt/arrayfire/lib/ dotnet run

I am getting a similar issue on windows.
> open ArrayFire;;
> let arr = Data.RandNormal<double>(2,2);;
System.DllNotFoundException: Unable to load DLL 'af': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
   at ArrayFire.Interop.AFRandom.af_randn(IntPtr& array_out, UInt32 ndims, Int64[] dim_dims, af_dtype type)
   at <StartupCode$FSI_0004>.$FSI_0004.main@()
Stopped due to error

dir "c:\Program Files\ArrayFire\v3\lib\af.*"
Directory of c:\Program Files\ArrayFire\v3\lib

2021-03-08  12:14         2,970,624 af.dll
2021-03-08  12:14           733,734 af.lib

Obviously a MAC specific env variable won't work on windows.
What is the best practice? I'd rather not copy af.dll to the local folder if there is a better way.

I was able to answer my own question this morning.
On windows you can add the folder where af.dll is located to the PATH and then it will work.
e.g. set PATH=%PATH%;c:\Program Files\ArrayFire\v3\lib
Furthermore ensure that bitness matches. This probably means you start F# with fsianycpu.exe rather than fsi.exe


fix(bin/stryker): Changed file permissions on stryker.

Changed file permissions on bin/stryker to 755 so it's executable under linux operating systems by default.

Thanks! 👍


WN: Add SignalR distributed tracing section and code sample

Add the new section for SignalR distributed tracing based on the dotnet/release-notes-draft.
Edit sweep
If any code samples, then move inline code into a runnable project and link the code back in.

Associated WorkItem - 317469

Moving this out to a future sprint after we have completed all the SFI work

Related to #34183 which was the follow up PR after this prep PR.


Wrong type of ExcerptFunction in Typescript?

ExcerptFunction is defined as
declare type ExcerptFunction = (contents: string, options: GraymatterOptions) => string;

but accually it returns void and the first parameter is an object as shown in the comment
function firstFourLines(file, options) {
   file.excerpt = file.content
     .split('\n')
     .slice(0, 4)
     .join(' ')
}

I have to change the type in source code manually to avoid an error. Maybe this can be fixed easily.

@Raynirs I can look at this if you can put this into a minimally reproducible example on Stackblitz

fixed in v0.16.0; please follow the type strictly and it will work or look at the tests I've added if you're not certain. I will add more to docs later.


No obvious way to create a rectangle

Looks like there's an entire source file set aside for building rectangles, except that there is not an accessible constructor in it for either  Rect or RectPosition--which means, since they build one another, that you can't actually build either one.
I may have missed something, of course.
Is there a way to build a rectangle? If not, is this intended?

The unit tests in rect.rs have plenty of examples, but the API isn't terribly intuitive. For example:
  let r = Rect::at(5, 5).of_size(6, 6);

This seemed like a good idea at the time, as I've previously had to waste lots of my time looking up whether e.g. SomeRectType(a, b, c, d) has width c and height d or maybe inclusive rightmost x-coordinate c or exclusive rightmost x-coordindate c, etc.
I'll make the docs clearer by adding that example to the docs for both Rect and RectPosition. Do you think that's enough? If not, which methods would you rather see?

I've updated the docs here: https://github.com/PistonDevelopers/imageproc/pull/181

@theotherphil Thanks a lot, that really clears up my confusion.


Use consistent URI <-> FilePath conversion logic

In the language server we use the .GetFileSystemPath() method frequently, which calls the following: https://github.com/OmniSharp/csharp-language-server-protocol/blob/82583557bee2699762e4e03989be22be02e1fb1b/src/Protocol/DocumentUri.Internal.cs#L260-L298
In the core logic, we use Uri.LocalPath.
Similarly, there is different conversion logic from path -> Uri:

https://github.com/OmniSharp/csharp-language-server-protocol/blob/82583557bee2699762e4e03989be22be02e1fb1b/src/Protocol/DocumentUri.cs#L442-L483
https://github.com/Azure/bicep/blob/d5f69a7dd2e38820b1c8af0fc7ca009a406f6c66/src/Bicep.Core/FileSystem/PathHelper.cs#L137-L154

Had an offline discussion on this. The consensus is to maintain a port of DocumentUri in Bicep.Core to ensure consistent URI type conversion logic. In the future, the Omnisharp language server library may get deprecated and replaced by another language server SDK. Maintaining our own copy makes it less expensive for us to do the migration.


Vectorize slope-angle shading polygons?

Instead of using gdaldem color-relief to generate a raster with colors, you should investigate vectorizing the slope-angle (non-color-relief) raster. Then you only have to store the vector polygons of given slope angles.
So vectorize polygons while binning into whole-degrees? Or bin into Caltopo's color scheme bins?

I ran out of memory on my mac while trying to run gdal_polygonize.py on the binned color-ramp file.


Installation into Linux Sublime Text 3

Hi, I'm trying to follow the bouncing ball with Sublime Text 3 on Linux. I've installed the tern packages (both of them) using the package manager, but can find no trace of the location to put the .js file. Doing a search, the only mention of tern on the system is in ~/.config/sublime-text-3/Installed Packages but that is a binary package.
Ta.
Peter.

Try my new package that doesn't require any configuration: https://github.com/Slava/tern-meteor-sublime


Topic recognition

This project tries to classify Alzheimer’s disease images of the ADNI brain dataset. The Siamese network is used to solve the problem. As a convolution neural network, a VGG16 network is used for the left and right sides of the Siamese network. In addition, as the loss function, contrastive loss is used. This project achieves an accuracy of 0.6 and has a test loop that also allows the plotting of test image pairs with the prediction and actual label.

This is an initial inspection, no action is required at this point
Difficulty: Hard
Readme: Good

Clear flow of information
Algortihm and training choices explained well
Relevant plots provided

Commit messages: OK
Code:

design is ok
sufficiently commented
siamese seem to be implemented correctly
lots of repeated code, could use more functions

Functionality/Performance:

only performing similarity detection between pairs of images, no classification
siamese network by itself only achieves 60% accuracy on the test set

General comments:

algorithm solves the respective problem only half-way
you need to have added a classifier that can classify an individual image as AD or NC with their features extracted by the trained siamese network

Marking
Good Practice (Design/Commenting, TF/Torch Usage)
Adequate design and implementation
Good spacing and comments
Header blocks missing -1
Recognition Problem
Solves problem partially, no classifier for single images -3
Driver Script present
File structure present
Shows Usage & Demo & Visualisation & Data usage
Module present
Commenting
No Data leakage
Difficulty: Hard
Commit Log
Meaningful commit messages mostly could be better -1
Progressive commits used
Documentation
ReadMe acceptable/good
Model/technical explanation
Good Description and Comments
Markdown used and PDF submitted
Pull Request
Successful Pull Request (Working Algorithm Delivered on Time in Correct Branch)
No Feedback required
Request Description minimal -1


fix(package): Fix noodled merge of shrinkwrap file

Out of order squash merging resulted in some from-lines
not being removed in the npm-shrinkwrap.
Change-Type: patch

Yay, all green on master again :-D


ODC-7417: Add scripts for Development setup

This PR adds 3 scripts.

For adding Pipelines operator to 4.15 cluster  (Not required)
For installing the operator and results on the cluster
Creating 5 pipeline runs on the cluster

https://issues.redhat.com/browse/ODC-7417

/retest

/retest
@vikram-raj @saumeya Should we merge this and then improve step by step?
@saumeya Is Avinals tekton results image sha still valid or can we use there latest as well?

/retest
@vikram-raj @saumeya Should we merge this and then improve step by step?
@saumeya Is Avinals tekton results image sha still valid or can we use there latest as well?

Sure, @jerolimov  - i'll remove the autocreate pipelies part as we have your script for test data. I will update the image tag


falco rules mitre checker module

What type of PR is this?
/kind feature
Any specific area of the project related to this PR?
/area rules
What this PR does / why we need it:
Provide a python module to check the compliance of the Falco rules against the Mitre ATT&CK Framework. This library will provide to Falco experts and Falco users a way to check default and custom rules for Mitre ATT&CK extra tags.
The library will use STIX from the OASIS standards. Structured Threat Information Expression (STIX™) is a language and serialization format used to exchange cyber threat intelligence (CTI) :

STIX CTI documentation

Leveraging STIX, the library will fetch the ATT&CK® STIX Data from MITRE ATT&CK repositories using the python-stix2 library implemented by OASIS:

ATT&CK STIX Data repository
Python STIX2 repository

The choice of a module is motivated by the packaging of a python code to integrate it into wider Falco implementations. More precisely, the library can be used by :

Falco users and experts to check their falco rules files
Other falco components that need to check the validity of rules files

More details in proposal https://github.com/falcosecurity/rules/issues/88

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

dd856ba falco rules mitre checker module

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: IceManGreen
Once this PR has been reviewed and has the lgtm label, please assign leogr for approval. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Welcome @IceManGreen! It looks like this is your first PR to falcosecurity/rules 🎉

❤ thank you @IceManGreen, please allow some time to allocate time for review as it's a complete new module that requires more thorough review and testing :) ETA maybe 1-2 weeks. Thank you again 🙏 !

re licensing
https://github.com/oasis-open/cti-python-stix2 -> BSD-3-Clause license is ok for CNCF projects
https://github.com/mitre-attack/attack-stix-data/blob/master/LICENSE.txt is a custom license.
CC @leogr what the implications are as cti-python-stix2 (ok license) is using the attack stix data (custom license).

CC @leogr what the implications are as cti-python-stix2 (ok license) is using the attack stix data (custom license).

Unfortunately, the custom license requires an explicit license exception approval by the CNCF. Is there no valid alternative?

CC @leogr what the implications are as cti-python-stix2 (ok license) is using the attack stix data (custom license).

Unfortunately, the custom license requires an explicit license exception approval by the CNCF. Is there no valid alternative?

I am checking with the CNCF policies for potential licenses approvals.
The custom license seems quite permissive ("non-exclusive, royalty-free license to use ATT&CK® for research,
development, and commercial purposes"), so I do not think the that this terms could stop this PR on a legal basis.
Thanks a lot for highlighting this issue @incertum and @leogr, I am working on it.

CC @leogr what the implications are as cti-python-stix2 (ok license) is using the attack stix data (custom license).

Unfortunately, the custom license requires an explicit license exception approval by the CNCF. Is there no valid alternative?

I am checking with the CNCF policies for potential licenses approvals. The custom license seems quite permissive ("non-exclusive, royalty-free license to use ATT&CK® for research, development, and commercial purposes"), so I do not think the that this terms could stop this PR on a legal basis.
Thanks a lot for highlighting this issue @incertum and @leogr, I am working on it.
EDIT: @leogr the repo under this license is actually used for the base knowledge, so it is used as data only in the mitre-checker module and not as a dependency. Do you know if it still has an incidence on the license approval for the PR ?

As per the common interpretation of the CNCF IP Policy, only those dependencies that are Apache 2.0 or are in the Allowlist are automatically approved. All other licenses need an explicit license exception from the CNCF.
So, I guess, even if that dependency is data only, it might still be subject to this policy.
License issues have been a hot topic for the CNCF community in the last few months. We were license scanned multiple times and still, pending concerns, put the Falco Graduation on hold. We are working closely with the CNCF to overcome these issues. We are in an unfortunate situation, sorry.
So, even though I agree there's no legal restriction, on the other hand, the Falco project must adhere to CNCF Policies, so I think we have to wait a bit on this PR until we get more clarity on the whole situation. I really apologize for that, but it's something that we can't fully control. :disappointed:
Anyway, I'll continuously monitor the situation and keep you posted. Also, once I find a bit of time, I will look deeper into this to see if there's any possible solution to unblock this shorty.
:pray:

I fully and understand ! No worries.
I think that we are in the same boat for this PR, so I want to help.
In parallel, I asked for advice in a channel of the CNCF's slack, I'll keep you in touch.

Thanks @IceManGreen for proactively reaching out in the CNCF slack channel, please keep us in the loop. We will file a license exception after our currently pending kernel module request. Unfortunately, no ETA for the delay this will cause.
/hold

Hello @incertum, @leogr,
I have some feedback from the Slack channel of the maintainer-circle about the license :
"Ultimately you're going to need to make a legal request for CNCF legal to take a look at this. [...] They're [Mitre ATT&CK] calling it Terms of Use, which means that you need to agree to it even if you're not copying the code.  It's written as a copyright license, though, which is kind of weird.  Copyright on data collections is a whole "fun" area of law. BTW, note that the terms of the license aren't actually problematic.  It's just not an accredited OSS license, which means you'll be waiting for a while on a legal response.But you do need to talk to CNCF Legal about this."
So, it is like we expected :

No problematic terms in the license
We have to contact the CNCF Legal services to submit the licence

Do you have a contact with the CNCF Legal ? It should be faster than me contacting them in this case.

Hello @incertum, @leogr,
I have some feedback from the CNCF Slack channel "maintainer-circle" about the license :
"Ultimately you're going to need to make a legal request for CNCF legal to take a look at this. [...] They're [Mitre ATT&CK] calling it Terms of Use, which means that you need to agree to it even if you're not copying the code. It's written as a copyright license, though, which is kind of weird. Copyright on data collections is a whole "fun" area of law. BTW, note that the terms of the license aren't actually problematic. It's just not an accredited OSS license, which means you'll be waiting for a while on a legal response.But you do need to talk to CNCF Legal about this."
So, it is like we expected :

No problematic terms in the license
We have to contact the CNCF Legal services to submit the licence

Do you have a contact with the CNCF Legal ? It should be faster than me contacting them in this case.

Thanks @IceManGreen and here is our proposal:
Let's file the exception after we finish our current pending legal requests scheduled for the October 2023 CNCF legal meeting. We can start drafting it already.

Hello @incertum, @leogr,
I have some feedback from the CNCF Slack channel "maintainer-circle" about the license :
"Ultimately you're going to need to make a legal request for CNCF legal to take a look at this. [...] They're [Mitre ATT&CK] calling it Terms of Use, which means that you need to agree to it even if you're not copying the code. It's written as a copyright license, though, which is kind of weird. Copyright on data collections is a whole "fun" area of law. BTW, note that the terms of the license aren't actually problematic. It's just not an accredited OSS license, which means you'll be waiting for a while on a legal response.But you do need to talk to CNCF Legal about this."
So, it is like we expected :

No problematic terms in the license
We have to contact the CNCF Legal services to submit the licence

Do you have a contact with the CNCF Legal ? It should be faster than me contacting them in this case.

Thanks @IceManGreen and here is our proposal:
Let's file the exception after we finish our current pending legal requests scheduled for the October 2023 CNCF legal meeting. We can start drafting it already.

:+1: and thank you!
Please, make sure in the draft that we are not going to incorporate this into the project until we have the green light from the CNCF legal committee. This is important to avoid it becoming a blocker for the graduation process.

@IceManGreen just started reviewing a bit, overall it looks very carefully designed, amazing!
Our 2 pending legal requests are still open and we would like to continue holding this until they are approved in order to not block graduation. Thank you for your patience!

Thanks @incertum !
In my turn, I recently had feedback from the Mitre ATT&CK stix-data maintainers :
https://github.com/mitre-attack/attack-stix-data/issues/42
(@leogr FYI)
As they said, it is the first time they heard about the ATT&CK terms of use blocking a contribution to a CNCF project. But nothing seems to be really problematic for this PR.
I will probably push a minor modification to change the name of the module from falco_mitre_checker into falco_mitre_attack_checker. It will be more explicit and legit in the long term.

/assign

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: IceManGreen
Once this PR has been reviewed and has the lgtm label, please ask for approval from leogr. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

07782fb Rename falco_mitre_checker into falco_mitre_attack_checker

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Thanks @incertum !
In my turn, I recently had feedback from the Mitre ATT&CK stix-data maintainers : mitre-attack/attack-stix-data#42 (@leogr FYI)
As they said, it is the first time they heard about the ATT&CK terms of use blocking a contribution to a CNCF project. But nothing seems to be really problematic for this PR.
I will probably push a minor modification to change the name of the module from falco_mitre_checker into falco_mitre_attack_checker. It will be more explicit and legit in the long term.

Thanks @IceManGreen: Jared Ondricek assessment is in the right direction I think. The only direct code dependency is https://github.com/oasis-open/cti-python-stix2 which is ok from a licensing perspective. I just am not 100% sure how the legal assessment of dependencies actually works as in if only the first degree dependency license is taken into consideration? @leogr is going to run point on this with the CNCF. We are just now super cautious and conservative as we do not want to risk disrupting Falco's path to graduation.

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Provide feedback via https://github.com/falcosecurity/community.
/lifecycle stale

/remove-lifecycle stale

Update:
The CNCF took so long to review and approve our pending license exceptions for us. But they are now all cleared, so we can proceed with this. Thank you for being so patient! :pray:
@IceManGreen

In my turn, I recently had feedback from the Mitre ATT&CK stix-data maintainers : mitre-attack/attack-stix-data#42 (@leogr FYI)
As they said, it is the first time they heard about the ATT&CK terms of use blocking a contribution to a CNCF project. But nothing seems to be really problematic for this PR.

Do we have evidence of other CNCF projects using miter-attack data? It would be relevant to submit the request.
Also, @IceManGreen and @incertum could you help me to list all 3rd-party deps in this PR that need a license exception?

yes @leogr we should get this kicked off now. I would really like to have clarity around the degree of dependencies, because the https://github.com/mitre-attack/attack-stix-data is a dependency of the dependency with ok license we aim to use, see my previous comment https://github.com/falcosecurity/rules/pull/181#issuecomment-1743900465. @leogr what would you suggest we do to first to get clarity? Since the CNCF is now freezing for KubeCon, likely we won't be able to make progress until after KubeCon EU 24.
Great callout to check for other Mitre uses within CNCF projects 👀 .

Hello @incertum and @leogr !
I agree with you, this experience with the Mitre ATT&CK license demonstrated that we should be careful with the 3rd-parties dependencies, at least about their licenses.
I confirm that this PR is dedicated to a CI/CD usage BUT I would suggest that we should still remain cautious.
My opinion is that we should consider using SBOM to bring the proof that the 3rd parties licenses are valid regarding the CNCF policy.
Do you know if one of the Falco repositories is using a framework to generate SPDX or CycloneDX SBOMs ?

Do you know if one of the Falco repositories is using a framework to generate SPDX or CycloneDX SBOMs ?
Not yet.
We have had just some discussions about that. cc @LucaGuerra

Do you know if one of the Falco repositories is using a framework to generate SPDX or CycloneDX SBOMs ?

Not yet. We have had just some discussions about that. cc @LucaGuerra

I also add @Nicolas-Peiffer to the discussion.
He has a great experience with SBOMs.

Based on our recent experience in this regard, I guess the main concern is if we distribute that not-allowed dependencies as part of our project. If I understood correctly, this will only run on the CI and will not be incorporated into our software distribution. If this is the case (please confirm), I think we may accept the risk of merging this and, in parallel, file an issue to the CNCF to clarify if our assumptions are valid. This way, we may save months.
Does it make sense?

@leogr On board! @IceManGreen, re review: Overall it already looked pretty good to me, just need to test drive it once! Trying to do that by next week, it's a reminder on my calendar already.

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.
:memo: Please follow instructions in the contributing guide to update your commits with the DCO
Full details of the Developer Certificate of Origin can be found at developercertificate.org.
The list of commits missing DCO signoff:

b36c212 fix: authors and required engine version

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

LGTM label has been added.  Git tree hash: 7e8ef5627edc170a638d2939842fdad95e4ad399

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: IceManGreen, incertum
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [incertum]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/approve
Fantastic work @IceManGreen! @leogr I would propose to merge this first version, I don't see anything that would constitute a blocker for a v1. Once we start working on the CI integration and the other ticket I opened on possibly integrating this info with the information displayed in the Rules Overview doc we can expand the framework if needed. The README was clear, I could get it to work on the first try.
I'll leave it up to you @leogr to unhold, thanks!

:+1:
/hold cancel


UI - No error message presented to user when deletion of model fails.

Steps to reproduce the problem:

Create an agent with any LLM model  likegpt-3.5-turbo
Try to delete this model.
Deletion of the model fails but there is no error message presented  to the user and model continues to be listed.

Delete API fails with model "gpt-3.5-turbo" is used by 1 agents and status 412 Precondition Failed
Expected behavior:
In this case , user should be presented with the error message from the api.

@cjellick Since deletion of a model has been removed, I wanted to check if this issue can be closed? Though I was thinking of improving the existing setting active/inactive of a model (ex. adding a warning alert that models may break if they set to inactive & a snackbar alert when the active state is successfully changed)

Since deletion of a model has been removed, I believe this issue is no longer valid.

There is no way to delete models anymore.