Exception: 504 Gateway Time-out

Describe the bug
Cannot download course, get the following error:
python ./udemy-dl.py https://www.udemy.com/course/nodejs-the-complete-guide/ -k cookies3.txt
              __                               ____
   __  ______/ /__  ____ ___  __  __      ____/ / /
  / / / / __  / _ \/ __ `__ \/ / / /_____/ __  / /
 / /_/ / /_/ /  __/ / / / / / /_/ /_____/ /_/ / /
 \__,_/\__,_/\___/_/ /_/ /_/\__, /      \__,_/_/
                           /____/
                                 Version : 1.0
                                 Author  : Nasir Khan (r0ot h3x49)
                                 Github  : https://github.com/r0oth3x49

[i] : Trying to login using session cookie
[i] : Logged in successfully.
Traceback (most recent call last):on ..
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/extract.py", line 339, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/extract.py", line 311, in _extract_large_course_content
    data = self._session._get(url).json()
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/session.py", line 47, in _get
    raise Exception(f"{session.status_code} {session.reason}")
Exception: 504 Gateway Time-out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./udemy-dl.py", line 611, in <module>
    main()
  File "./udemy-dl.py", line 581, in main
    udemy_obj.course_download(
  File "./udemy-dl.py", line 283, in course_download
    course = udemy.course(
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/udemy.py", line 40, in course
    return Udemy(url, username, password, cookies, basic, skip_hls_stream, callback)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/internal.py", line 65, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/shared.py", line 300, in __init__
    self._fetch_course()
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/internal.py", line 78, in _fetch_course
    self._info = self._real_extract(self._url, skip_hls_stream=self._skip_hls_stream)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/extract.py", line 608, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/extract.py", line 347, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/extract.py", line 320, in _extract_large_course_content
    resp = self._session._get(_next).json()
  File "/home/roman/Cloud/DriveTrust Drive/Udemy/udemy-dl/udemy/session.py", line 47, in _get
    raise Exception(f"{session.status_code} {session.reason}")
Exception: 504 Gateway Time-out

To Reproduce
Steps to reproduce the behavior:

udemy course url: [e.g https://www.udemy.com/course/nodejs-the-complete-guide/] '...'
Run the following command to reproduce the error:  python ./udemy-dl.py https://www.udemy.com/course/nodejs-the-complete-guide/ -k cookies3.txt
See error

Expected behavior
Course should download
Python Environment (please complete the following information):

Python 3.8.3
Ubuntu 18.04

I am also seeing this issue as well as the one below when the gateway does not timeout
Traceback (most recent call last):on ..
  File "udemy-dl.py", line 611, in <module>
    main()
  File "udemy-dl.py", line 581, in main
    udemy_obj.course_download(
  File "udemy-dl.py", line 283, in course_download
    course = udemy.course(
  File "/Users/jcrawford/udemy-dl/udemy/udemy.py", line 40, in course
    return Udemy(url, username, password, cookies, basic, skip_hls_stream, callback)
  File "/Users/jcrawford/udemy-dl/udemy/internal.py", line 65, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "/Users/jcrawford/udemy-dl/udemy/shared.py", line 300, in __init__
    self._fetch_course()
  File "/Users/jcrawford/udemy-dl/udemy/internal.py", line 78, in _fetch_course
    self._info = self._real_extract(self._url, skip_hls_stream=self._skip_hls_stream)
  File "/Users/jcrawford/udemy-dl/udemy/extract.py", line 608, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "/Users/jcrawford/udemy-dl/udemy/extract.py", line 347, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "/Users/jcrawford/udemy-dl/udemy/extract.py", line 311, in _extract_large_course_content
    data = self._session._get(url).json()
  File "/usr/local/lib/python3.8/site-packages/requests/models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File<EMAIL_ADDRESS>line 357, in loads
    return _default_decoder.decode(s)
  File<EMAIL_ADDRESS>line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File<EMAIL_ADDRESS>line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

I can also back this up on a completely different course:
              __                               ____
   __  ______/ /__  ____ ___  __  __      ____/ / /
  / / / / __  / _ \/ __ `__ \/ / / /_____/ __  / /
 / /_/ / /_/ /  __/ / / / / / /_/ /_____/ /_/ / /
 \__,_/\__,_/\___/_/ /_/ /_/\__, /      \__,_/_/
                           /____/
                                 Version : 1.0
                                 Author  : Nasir Khan (r0ot h3x49)
                                 Github  : https://github.com/r0oth3x49

[i] : Trying to login using session cookie
[-] : Udemy Says: 403 Forbidden session cookie seems to be expired...
[i] : Updating session cookie..
[i] : Logged in successfully.
Traceback (most recent call last):on ..
  File "udemy-dl.py", line 611, in <module>
    main()
  File "udemy-dl.py", line 581, in main
    udemy_obj.course_download(
  File "udemy-dl.py", line 283, in course_download
    course = udemy.course(
  File "C:\work\udemy-dl\udemy\udemy.py", line 40, in course
    return Udemy(url, username, password, cookies, basic, skip_hls_stream, callback)
  File "C:\work\udemy-dl\udemy\internal.py", line 65, in __init__
    super(InternUdemyCourse, self).__init__(*args, **kwargs)
  File "C:\work\udemy-dl\udemy\shared.py", line 300, in __init__
    self._fetch_course()
  File "C:\work\udemy-dl\udemy\internal.py", line 78, in _fetch_course
    self._info = self._real_extract(self._url, skip_hls_stream=self._skip_hls_stream)
  File "C:\work\udemy-dl\udemy\extract.py", line 608, in _real_extract
    course_json = self._extract_course_json(url, course_id, portal_name)
  File "C:\work\udemy-dl\udemy\extract.py", line 347, in _extract_course_json
    resp = self._extract_large_course_content(url=url)
  File "C:\work\udemy-dl\udemy\extract.py", line 311, in _extract_large_course_content
    data = self._session._get(url).json()
  File "C:\Python38\lib\site-packages\requests\models.py", line 898, in json
    return complexjson.loads(self.text, **kwargs)
  File "C:\Python38\lib\json\__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "C:\Python38\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Python38\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Also the cookie is most definitely not expired, still, I logged in with email and password and received the above error. It worked previously but I do think it's a Udemy change because I tried with a previous version of udemy-dl and it does not fix the issue.

@PaulNegoescu if it says 403 it is getting blocked by udemy server while using your cookie which is why shows that msg to you. did you provided user/pass as well? because i didn't added any functionality as of yet to update session cookie by asking for a new token on the go.

@PaulNegoescu if it says 403 it is getting blocked by udemy server while using your cookie which is why shows that msg to you. did you provided user/pass as well? because i didn't added any functionality as of yet to update session cookie by asking for a new token on the go.

I did provide user and password and I'm getting the message logged in successfully as you can see in the dump above, afterwards it just seems to time out. Thing is, I checked the cookie a lot of times and it is valid and currently set in my browser.

getting similar issue than romrayster and jcrawford on version 1.0. Worth noting that the error does not occur on 0.5 for me.
          __                               ____

__  / /  ____ ___  __  __      __/ / /
/ / / / __  / _ / __ ` / / / // __  / /
/ // / // /  / / / / / / /_/ // // / /
_,/_,_/_// // //_, /      _,//
/___/
Version : 1.0
Author  : Nasir Khan (r0ot h3x49)
Github  : https://github.com/r0oth3x49
[i] : Trying to login using session cookie
[i] : Logged in successfully.
Traceback (most recent call last):on ..
File "./udemy-dl.py", line 611, in
main()
File "./udemy-dl.py", line 598, in main
udemy_obj.course_listdown(
File "./udemy-dl.py", line 148, in course_listdown
course = udemy.course(
File "/home/nlynzaad/git/udemy-dl/udemy/udemy.py", line 40, in course
return Udemy(url, username, password, cookies, basic, skip_hls_stream, callback)
File "/home/nlynzaad/git/udemy-dl/udemy/internal.py", line 65, in init
super(InternUdemyCourse, self).init(*args, **kwargs)
File "/home/nlynzaad/git/udemy-dl/udemy/shared.py", line 300, in init
self._fetch_course()
File "/home/nlynzaad/git/udemy-dl/udemy/internal.py", line 78, in _fetch_course
self._info = self._real_extract(self._url, skip_hls_stream=self._skip_hls_stream)
File "/home/nlynzaad/git/udemy-dl/udemy/extract.py", line 608, in _real_extract
course_json = self._extract_course_json(url, course_id, portal_name)
File "/home/nlynzaad/git/udemy-dl/udemy/extract.py", line 347, in _extract_course_json
resp = self._extract_large_course_content(url=url)
File "/home/nlynzaad/git/udemy-dl/udemy/extract.py", line 311, in _extract_large_course_content
data = self._session._get(url).json()
File "/usr/lib/python3.8/site-packages/requests/models.py", line 898, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3.8/json/init.py", line 357, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Just throwing in a possible cause. It might be that cloudflare bot detection has something to do with it. It seems to catch more scripts lately than it used to.

Just throwing in a possible cause. It might be that cloudflare bot detection has something to do with it. It seems to catch more scripts lately than it used to.

@PaulNegoescu i don't think so cloudflare is involved in API level, it only restricts from bots to login using user/pass but cookies should work fine in all cases. The error is more related to broken json contents, while 504 timeout is because of big course i guess which i don't have any in my account and requested others to either share the cookie or creds on my email so that i can reproduce and fix.

@r0oth3x49 let me know if you still require creds to test

@dragonhelios yes i still need an account to reproduce the issue or a cookie file with course link which throws the above error, both 504 Timeout and json error.
email<EMAIL_ADDRESS>

sent

sent

pushing a fix now.

You all should use --skip-hls when downloading large course contents that way udemy-dl will avoid requesting hls based streams and the fetching will be faster otherwise it will take time.

You all should use --skip-hls when downloading large course contents that way udemy-dl will avoid requesting hls based streams and the fetching will be faster otherwise it will take time.

will it work.? or I'm ready to provide my details

You all should use --skip-hls when downloading large course contents that way udemy-dl will avoid requesting hls based streams and the fetching will be faster otherwise it will take time.

will it work.? or I'm ready to provide my cookie access token details

it should work now try testing and let me know if you still face the issue, --skip-hls is to done things faster.

will it work.? or I'm ready to provide my cookie access token details

New code is working for me.
--skip-hls is really faster!
Thanks

You all should use --skip-hls when downloading large course contents that way udemy-dl will avoid requesting hls based streams and the fetching will be faster otherwise it will take time.

will it work.? or I'm ready to provide my cookie access token details

it should work now try testing and let me know if you still face the issue, --skip-hls is to done things faster.

--skip-hls throwing error bro :(

Use last version, which is 1.0 and not 0.5!

will it work.? or I'm ready to provide my cookie access token details

New code is working for me.
--skip-hls is really faster!
Thanks

remember --skip-hls will skip streams such as 1080p.
usually most of the courses provide 1080p in HLS based stream and rest till 720p are normal mp4 videos.
so if you want to download the video in 1080p (if exists) then you don't need to use that switch. i will later on add a warning msg if -q 1080 and --skip-hls both arguments are used togather.
you should either use -q 1080 or --skip-hls which by default downloads the highest availble resolution while in most of the courses normal highest available mp4 videos are 720p.

Use last version, which is 1.0 and not 0.5!

Thanks sir cloning will work na..?

You all should use --skip-hls when downloading large course contents that way udemy-dl will avoid requesting hls based streams and the fetching will be faster otherwise it will take time.

will it work.? or I'm ready to provide my cookie access token details

it should work now try testing and let me know if you still face the issue, --skip-hls is to done things faster.

--skip-hls throwing error bro :(
will i have to clone the latest repo

just run a git pull inside of udemy-dl if you have cloned it otherwise download the master zip.

Thanks sir cloning will work na..?

git push will update the code to the last version

Thanks sir cloning will work na..?

git push will update the code to the last version

should be git pull not push

should be git pull not push
Oops :-)

Thanks sir cloning will work na..?

git push will update the code to the last version

should be git pull not push

yeah its work but as i told you in previous issue i have already downloaded 70% of course but after the --skip-hls added its downloading  the course from first chapter it should resume  but it's not.My udemy course consist of 36 chapter and i have downloaded till 25 chapter but it's downloading from start and replacing the previous downloaded file one by one please help.

Thanks sir cloning will work na..?

git push will update the code to the last version

should be git pull not push

yeah its work but as i told you in previous issue i have already downloaded 70% of course but after the --skip-hls added its downloading the course from first chapter it should resume but it's not.My udemy course consist of 36 chapter and i have downloaded till 25 chapter but it's downloading from start and replacing the previous downloaded file one by one please help.

this is strange until unless the name of lecture and videos not getting changed udemy-dl should resume downloading instead. --skip-hls is used to avoid requesting hls based streams that's it.  btw hls based streams will always be downloaded from scratch  if you are also using --quality with 1080 then it's normal behavior to download the video again because there is no way we can resume HLS stream so far in my knowledge i don't know if we can resume downloading HLS streams.
but yes it has a support to resume a course or a mp4 video.

Thanks sir cloning will work na..?

git push will update the code to the last version

should be git pull not push

yeah its work but as i told you in previous issue i have already downloaded 70% of course but after the --skip-hls added its downloading the course from first chapter it should resume but it's not.My udemy course consist of 36 chapter and i have downloaded till 25 chapter but it's downloading from start and replacing the previous downloaded file one by one please help.

this is strange until unless the name of lecture and videos not getting changed udemy-dl should resume downloading instead. --skip-hls is used to avoid requesting hls based streams that's it. btw hls based streams will always be downloaded from scratch if you are also using --quality with 1080 then it's normal behavior to download the video again because there is no way we can resume HLS stream so far in my knowledge i don't know if we can resume downloading HLS streams.
but yes it has a support to resume a course or a mp4 video.

thanx i use my brain and some of your syntax  and i used downloading video from a specific range of chapter and i downloaded the only remaining chapter by --chapter-start 25 --chapter-end 36 command. And if you think it's strange i will capture the video and i will show exactly what's happening behind the scene to you, actually for some video it was skipping by showing the (already downloaded) but for most of the video it was downloading from beginning as part file and after finished downloading it was replacing the previously downloaded file, anyway  --chapter-start 25 --chapter-end 36 this take me out. Thanks once again Love from Bihar,India.

Thanks sir cloning will work na..?

git push will update the code to the last version

should be git pull not push

yeah its work but as i told you in previous issue i have already downloaded 70% of course but after the --skip-hls added its downloading the course from first chapter it should resume but it's not.My udemy course consist of 36 chapter and i have downloaded till 25 chapter but it's downloading from start and replacing the previous downloaded file one by one please help.

this is strange until unless the name of lecture and videos not getting changed udemy-dl should resume downloading instead. --skip-hls is used to avoid requesting hls based streams that's it. btw hls based streams will always be downloaded from scratch if you are also using --quality with 1080 then it's normal behavior to download the video again because there is no way we can resume HLS stream so far in my knowledge i don't know if we can resume downloading HLS streams.
but yes it has a support to resume a course or a mp4 video.

thanx i use my brain and some of your syntax and i used downloading video from a specific range of chapter and i downloaded the only remaining chapter by --chapter-start 25 --chapter-end 36 command. And if you think it's strange i will capture the video and i will show exactly what's happening behind the scene to you, actually for some video it was skipping by showing the (already downloaded) but for most of the video it was downloading from beginning as part file and after finished downloading it was replacing the previously downloaded file, anyway --chapter-start 25 --chapter-end 36 this take me out. Thanks once again Love from Bihar,India.

thanks man glad to help you, have fun.

@r0oth3x49 Thanks for the assist.


Add WithExtensions support

Changes
Add WithExtensions support that simplifies adding akka.extensions HOCON setting

What happens if this method gets called multiple times?


Feature Request: Change endpoint path

Currently it is not possible to alter the path that were extracted from the controllers with OperationFilter.
I have an use case where the endpoint I want to display in the documentation is different than the actual endpoint found in code, so it would be nice to be able to easily change that with an OperationFilter or something similar.

Realized this is possible using the DocumentFilter


Falsely reported "Call to undefined static method"

Larastan Version: 2.0.0
--level used: 1

Description
Larastan reports "Call to undefined static method..." on core laravel classes.

Laravel code where the issue was found
Default UserFactory and any migration using Illuminate\Support\Facades\Schema::connection().
    public function definition()
    {
        return [
            'name' => $this->faker->name(),
            'email' => $this->faker->unique()->safeEmail(),
            'email_verified_at' => now(),
            'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
            'remember_token' => Str::random(10),
        ];
    }

Hello @EriBloo 👋🏻
Thank you for your report.
Do you import Str?
use Illuminate\Support\Str;

Yes.
I checked it with Illuminate\Support\Arr as well and I get the same error. It is not isolated to UserFactory class - I get the same error in other classes (and with other static methods of this class).
PhpStorm reports no issues (like undefined method or class doesn't exist) - I can ctrl-click to jump to definition.

Str::random also appears here
https://github.com/szepeviktor/larastan-issue/blob/fbca632fbdf1775b78495ac2012169abef12054b/database/factories/UserFactory.php#L25
And the analysis succeeds on level: 8
https://github.com/szepeviktor/larastan-issue/actions/runs/4089331889/jobs/7051918984
I think there is something wrong with your setup.
Please try starting with laravel/laravel sample application and try to reproduce the error there.

Yes, you are right. I cleaned up phpstan.neon a bit and I think I found what causes this error.
I'm using barryvdh/laravel-ide-helper and to include definitions from generated files I added:
    scanFiles:
        - _ide_helper.php
        - _ide_helper_models.php
        - .phpstorm.meta.php

to configuration. After I removed those lines those errors didn't show up (ofc I got multiple new errors due to missing ide_helper definitions).
Is this intended behavior? Or maybe I misunderstood scanFiles parameter?

This is my own conclusion.

Larastan is not fully compatible with ide-helper
Please consider purchasing a Laravel add-on for your IDE

Thank you very much for all the help :)

You're welcome.


fix: Not null field primary key is not "required"

This is a partial fix to #46 now is not required to provide the primary key to perform an insert.
Also fixed a typo.
Since the field value is auto-incremented by sqlite if not provided.
https://www.sqlite.org/autoinc.html
https://www.sqlite.org/c3ref/last_insert_rowid.html

Thanks a lot @muniter. I was anticipating something was wrong with the implementation of primary key but couldn't pin it down. damn typos 🤣


MY game keeps crashing

"Mod resolution encountered an incompatible mod set!
A potential solution has been determined:
Install fabric, any version.
Unmet dependency listing:
Mod 'Skligga Hack' (skliggahack) 0.1.0 requires any version of fabric, which is missing!"

You are missing fabric api


fix: add -v flag to output version

What does this PR do?
Add the -v flag to output the ddns-go version.
Motivation
Related to Homebrew/homebrew-core#132725.
Additional Notes

👍


Linux 4 Tegra 28.3

The new L4T 28.3 is out. Will there be an updated release matching this?
https://developer.nvidia.com/embedded/linux-tegra-r283

I'm working on it.

Now available on the thud-l4t-r28.3 branch.


Add pointForCoordinate (only Google)

Closing in favour of #2039
@Rudolph-Miller sorry for this, please re-open/comment if you think I missed something 🤗

Okay! :octocat:


Setting the hidden state for each minibatch with different hidden sizes and multiple LSTM layers in Keras

I created an LSTM using Keras with TensorFlow as backend. Before a minibatch with a num_step of 96 is given to the training, the hidden state of the LSTM is set to true values of a previous time step.
First the parameters and data:
batch_size = 10
num_steps = 96
num_input = num_output = 2
hidden_size = 8
X_train = np.array(X_train).reshape(-1, num_steps, num_input)
Y_train = np.array(Y_train).reshape(-1, num_steps, num_output)
X_test = np.array(X_test).reshape(-1, num_steps, num_input)
Y_test = np.array(Y_test).reshape(-1, num_steps, num_output)

The Keras model consists of two LSTM layers and one layer to trim the output to num_output which is 2:
model = Sequential()
model.add(LSTM(hidden_size, batch_input_shape=((batch_size, num_steps, num_input)),
               return_sequences=True, stateful = True)))
model.add(LSTM(hidden_size, return_sequences=True)))
model.add(Dropout(0.2))
model.add(TimeDistributed(Dense(num_output, activation='softmax')))

model.compile(loss='mean_squared_error', optimizer='adam', metrics=['accuracy'])

The generator, as well as the training:
    def gen_data():
            x = np.zeros((batch_size, num_steps, num_input))
            y = np.zeros((batch_size, num_steps, num_output))
            while True:
                for i in range(batch_size):
                    model.layers[0].states[0] = K.variable(value=hidden_states[gen_data.current_idx]) # hidden_states[x] has shape (2,)
                    x[i, :, :] = X_train[gen_data.current_idx]
                    y[i, :, :] = Y_train[gen_data.current_idx]
                    gen_data.current_idx += 1
                yield x, y
    gen_data.current_idx = 0

    for epoch in range(100):
        model.fit_generator(generate_data(), len(X_train)//batch_size, 1,
                            validation_data=None, max_queue_size=1, shuffle=False)
        gen_data.current_idx = 0

This code does not give me an error, but I have two questions about it:

Inside the generator I set the hidden state of the LSTM model.layers[0].states[0] to a variable on hidden_states[gen_data.current_idx] with the shape (2,).
Why is this possible for an LSTM with a hidden size greater than 2?

The values in hidden_states[gen_data.current_idx] could also be an output from the Keras model. Does it make sense for a two-layer LSTM to set the hidden state in this way?

A detailed answer to my problem can be found at stackoverflow:
https://stackoverflow.com/questions/55534572/setting-the-hidden-state-for-each-minibatch-with-different-hidden-sizes-and-mult


Some icons are broken by optimization.

The feather icon set in particular has several instances where this happens. One example is the help-circle icon:

It seems to be where a line starts and stops at the same point that it is removed:
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="feather feather-help-circle">
  <circle cx="12" cy="12" r="10"></circle>
  <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
  <line x1="12" y1="17" x2="12" y2="17"></line>
</svg>

Try to optimize your icon with svgomg , playing with different features. This way you can find plugins that cause the issue. Then you could just disable problem plugins like this:
svgJar: {
  optimizer: {
    plugins: [
      { cleanupIDs: false }
    ]
  }
}


Support chunking files

Fantastic work so far guys!
I'm currently trying to pass it a template for document generation but I am getting the following response:
openai.error.InvalidRequestError: This model's maximum context length is 4097 tokens. However, your messages resulted in 59431 tokens. Please reduce the length of the messages.

Do you plan on supporting longer files?  If so, I can have a go at creating a PR if you could point me in the right direction? (I mostly use JS and Ruby, my Python is a bit rusty)

Hey @krisquigley, thanks for raising the issue. We're looking into this, can you tell us more about how you got this response so we can reproduce it on our end?

Sure thing!

Set up an agent to generate a document based on a template:

agent.name = "RubyContractorGPT"
agent.description = (
    "an AI assistant that produces contracts for Ruby Developers from a template"
)
agent.goals = [
    "Write a contract for a Ruby Developer",
]

At some point it will want to read from a file, or give it feedback to read from a file immediately:
read_from_file, Args: {'file': './training-data/short-form-single-company.rtf'}

Ensure the file is over 4097 tokens and you should see an error along the lines of:

openai.error.InvalidRequestError: This model's maximum context length is 4097 tokens. However, your messages resulted in 59431 tokens. Please reduce the length of the messages.

Thanks for the update @krisquigley! We will implement chunking soon.


[Bug]: shopify theme dev opens new browser (or tab) every few hours

Please confirm that you have:

[X] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[X] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Theme
Expected behavior
I just upgraded to 3.45.3 and ran shopify theme dev with a sigh of relief that running this command did not open my browser and/or created a new tab with http://<IP_ADDRESS>:9292/ url. Moments later, it did open a new tab in my browser.
I believe this was introduced in 3.45.0 or earlier. It was happening from 3.45.1 for me. I don't know which version I used before that.
Why is this an issue?
It is an issue, because it is unnecessary and disrupting whatever I was doing.
If I have the shopify theme dev running in the background, it will randomly (when it disconnects) relaunch Ruby ThemeKit, which will open a new tab, which is a huge issue. When this happens, my browser app gets focused and the new tab opens. I could be watching a movie, or typing in my password in another tab or having a live demo or doing anything else. There's no need for the CLI to open a new tab, especially not 2 hours after I started shopify theme dev.
If you cannot prevent restarts, or don't have better way to have ThemeKit (or whatever it's called) running in the background, please just don't open a browser tab when the tool is restarted. It's extremely distracting.
Can you please introduce a config option for this or just remove the functionality? Or tell me which version of the CLI implemented this so that I can install the one before that.
Thank you!
Actual behavior
/
Verbose output
/

Reproduction steps

Run shopify theme dev

Operating System
macOS Ventura
Shopify CLI version (check your project's package.json if you're not sure)
3.45.3
Shell
zsh
Node version (run node -v if you're not sure)
v18.11.0
What language and version are you using in your application?
Ruby 3.1.2

same here

Same thing here.

Same here.

@Christoph-AK how is this related to the login fix? I don't want Shopify CLI to open new browser window...ever. That includes the initial start of the server. The login fix might fix the issue where the new browser window opens after every 90-120 minutes (when login auth expires), but I still want to have the option of disabling new browser window from opening...
This is how the tool worked before and it's been recently introduced and it's interfering with my workflow. Especially when the new browser window opens and I'm in the middle of the conference call, sharing my screen!


Create placeholder for license name, similar to BIONITIO_AUTHOR

This will allow us to use the correct license name in module headers and documentation.

Done in 3975a7ba72a48b438b0e4b8a74feef3a89d8dc73


Hacktober branch

issue #133 resolved

Hey @aksharma27  ! Please give me a link to the site where I can see your changes. If you don't know how to create a link, refer this.

Link?

Hey @aksharma27, please provide the link

https://healhubgit.netlify.app/pages/bodyfat
Sorry for the delay.

How do I resolve those conflicts?


Consider adding a generic Regex plugin that takes a custom rules file

Some of the other tools such as gitleaks, trufflehog, etc. take in a custom rules file with regex patterns. Consider adding a plugin like that which would be a lightweight way to customize the tool without making custom plugins (like #291). This maybe a good alternative for some use cases.

I can try putting together a PR

cc @domanchi for opinions.
I think this is a side-effect of different audiences wanting different things, some people (e.g. pentesters) will want the lightweight config option -- others (stringent engineers) will think custom plugins encourages best-practices, and that best-practices should always be strongly encouraged.
I guess the question that should maybe decide this is: would we include a config file of regexes by default? I think our answer to this is No. Because we'll always want tests. I remember there was some truffleHog regex that had a weird length requirement.
The "fb" followed by anything regex that gitLeaks has is similar. Tests would always help clearly display what it does and does not intend to catch.
Implementation-wise, it may be not be super straightforward to dynamically generate classes that inherit from RegexDetector, and have a secret_type set to the name of the regex in the config file, although it is totally do-able.
The problem is also that with verification, that has to be written in Python. And we ideally want a verify method, because other secret detection tools don't have that AFAIK.
I do have this in my notes
Plugins to make
     "Facebook Secret Key"
     "Facebook Client ID"
     "Facebook access token"
     "Github"
     "Google API key"
     "Google Cloud Platform API key"
     "Google OAuth"
     "Google OAuth access token"
     "Twitter Secret Key"
     "Twitter Client ID"
     "LinkedIn Client ID"
     "LinkedIn Secret Key"
     "Heroku API key"
     "Mailgun API key"

as it would be really nice not to have any secret types found by other tools, and not by detect-secrets. I was gonna do the Facebook ones, but I don't know if we'll ever do the others 🤐
This makes d-s strictly worse in some regards, we could of easily blindly copy others' regexes into new plugins, and not add verification, but the high-bar signal-to-noise bar we have for plugins is also kind of a good thing.

An aside: I can't add labels to GitHub issues anymore, just throwing that out there. If any current-Yelper wants to carry the prestigious Issue Labeler torch, feel free to. 😁 😄

Thanks for the quick reply!
The use case I am looking at is where an organization would want to customize this for their internal use with patterns and plugins suitable for them, but not something that can be shared with the outside world. Having a regex plugin that allows a list of patterns to be passed would facilitate an easy way to extend the tool without going through the hassle of writing a custom plugin for each use case, especially where there are dozens of patterns and not all of them have verification available (things like SSNs, internal passwords, etc). This would also encourage developers to add patterns to the rules file.
Of course, once # 291 is merged in since may not be needed since such plugin can be written outside the main code base and used by those that needed it :) Perhaps that is a better way to proceed?

I think it is. End-product for a custom plugin is 3 lines of Python, as opposed to 1 line in a config for this idea, (granted there may be a ton of plugins,) so I don’t think developers will mind much.
Can no longer close issues

Will close this for now, since #291 will take care of this use case

And thank you

I agree with @KevinHock. Another point to note is that baselines are created with the intention of being able to be compared over time, as well as being human readable (for auditing purposes). If you just passed in a file with regexes, you would have to consider how to represent this.
For example, while a file hash of the regex file may suffice to achieve the first objective (comparable over time), it doesn't deal well with the second objective. One should be able to read the baseline, and know how to triage the results, and why the engine flagged them as such.

@domanchi It is a good point. I was thinking of recording the patterns in the baseline as part of the configuration, same way hex_limit is done for "HexHighEntropyString" plugin. That doesn't address the use case of patterns changing.


Won't launch - "permission denied"

Firstly, thanks so much for all your hard work creating this snap. However, I can't seem to get it to load. Here's what I'm seeing when attempting to run it via terminal:
...
(yad:39531): dbind-WARNING **: 10:26:13.163: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-ivPyn41GHK: No such file or directory
shm_unlink: No such file or directory
shm_open: Permission denied
ftruncate: Bad file descriptor
esync: up and running.
removed '/tmp/Fusion%20360%20Admin%20Install.exe'
/snap/fusion360/10/bin/sommelier: line 102: 39567 Broken pipe             yes
     39568 Terminated              | yad --progress --title="Installing ${EXE_NAME}" --progress-text= --width=400 --center --no-buttons --auto-close --auto-kill --on-top --pulsate
Running hook '/snap/fusion360/10/sommelier/hooks/post-install'
updated RUN_EXE=
Starting application..

Snap info:
snap --version
snap    2.51.3
snapd   2.51.3
series  16
pop     21.04
kernel  5.11.0-7620-generic

OS info:
OS: Pop!_OS 21.04 x86_64
Kernel: 5.11.0-7620-generic

Fusion360 snap info:
snap info fusion360
name:      fusion360
summary:   Integrated CAD, CAM, CAE, and PCB software.
publisher: Michael Bond (thermionix)
store-url: https://snapcraft.io/fusion360
contact:   https://github.com/Thermionix/fusion360
license:   unset
description: |
  _Developed by Autodesk_

  Features
    * Parametric Modelling
    * Program tool paths for CNC machines
    * 3D Rendering
    * Export STL models for the 3D Printer

  **known issues:**
  * Floating toolbars
  * Hangs on exit
commands:
  - fusion360
  - fusion360.wine
  - fusion360.winetricks
snap-id:      8qsIvaV1JD8Ne3p3UcS8701cbJmOGqHw
tracking:     latest/stable
refresh-date: today at 09:31 CDT
channels:
  latest/stable:    0.6 2021-08-12 (10) 184kB -
  latest/candidate: ↑
  latest/beta:      ↑
  latest/edge:      ↑
installed:          0.6            (10) 184kB -

@kz6fittycent Hey, you can use this command before you running this snap app:

export NO_AT_BRIDGE=1

Then it's so, the accessibility warning is a known bug.

Hey, I made sure to run the export command, here's what's happening now:
shm_unlink: No such file or directory
shm_open: Permission denied
ftruncate: Bad file descriptor
esync: up and running.
removed '/tmp/Fusion%20360%20Admin%20Install.exe'
/snap/fusion360/10/bin/sommelier: line 102: 60291 Broken pipe             yes
     60292 Terminated              | yad --progress --title="Installing ${EXE_NAME}" --progress-text= --width=400 --center --no-buttons --auto-close --auto-kill --on-top --pulsate
Running hook '/snap/fusion360/10/sommelier/hooks/post-install'
updated RUN_EXE=
Starting application..

@kz6fittycent The Installation via the store works, but nothing happens after downloading the installer!
https://user-images.githubusercontent.com/79079633/129252909-97f83ca7-a119-48ec-b333-d31ecf787dae.mp4

This is great work! Same issue however.
Initialising Wine..
Gtk-Message: 12:24:22.280: Failed to load module "appmenu-gtk-module"
shm_open: Permission denied
ftruncate: Bad file descriptor
esync: up and running.
Installing application..
Running hook '/snap/fusion360/10/sommelier/hooks/pre-install'
Gtk-Message: 12:24:28.984: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.091: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.202: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.309: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.417: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.526: Failed to load module "appmenu-gtk-module"
grep: /home/kronos/snap/fusion360/common/.wine/*.reg: No such file or directory
Gtk-Message: 12:24:29.640: Failed to load module "appmenu-gtk-module"
shm_unlink: No such file or directory
shm_open: Permission denied
ftruncate: Bad file descriptor
esync: up and running.
removed '/tmp/Fusion%20360%20Admin%20Install.exe'
/snap/fusion360/10/bin/sommelier: line 102: 27107 Broken pipe             yes
     27108 Terminated              | yad --progress --title="Installing ${EXE_NAME}" --progress-text= --width=400 --center --no-buttons --auto-close --auto-kill --on-top --pulsate
Running hook '/snap/fusion360/10/sommelier/hooks/post-install'
updated RUN_EXE=
Starting application..

This is related to the 'strict' confinement, on my machine I'd been running on devmode which wasn't restricting the interfaces - just testing which of the interfaces are required and a new version will be up

This is related to the 'strict' confinement, on my machine I'd been running on devmode which wasn't restricting the interfaces - just testing which of the interfaces are required and a new version will be up

You may want to provide some instructions (for the time being) that include running in devmode.
sudo snap install --devmode fusion360

Okay, running in devmode did the trick.

This is related to the 'strict' confinement, on my machine I'd been running on devmode which wasn't restricting the interfaces - just testing which of the interfaces are required and a new version will be up

You may want to provide some instructions (for the time being) that include running in devmode.
sudo snap install --devmode fusion360

If I can't sort out the required interfaces in a day or so, I'll change confinement to devmode and it'll only be available as beta

This is related to the 'strict' confinement, on my machine I'd been running on devmode which wasn't restricting the interfaces - just testing which of the interfaces are required and a new version will be up

You may want to provide some instructions (for the time being) that include running in devmode.
sudo snap install --devmode fusion360

If I can't sort out the required interfaces in a day or so, I'll change confinement to devmode and it'll only be available as beta

Have you opened a thread on the forum?

I've moved it to beta for now
sudo snap install --beta fusion360 --devmode

This seems to be the universal problem I'm having. That picture in the workspace is my wallpaper, and it seems the graphics are glitching and preventing anything from being displayed in the editor. I can open folders, toggle dropdowns, and even open files without a problem but nothing is displayed in the center besides a glitched screenshot.

This seems to be the universal problem I'm having. That picture in the workspace is my wallpaper, and it seems the graphics are glitching and preventing anything from being displayed in the editor. I can open folders, toggle dropdowns, and even open files without a problem but nothing is displayed in the center besides a glitched screenshot.

You may want to open a separate issue. It'll make it much easier for @Thermionix to trouble-shoot and keep things orderly.

@Thermionix feel free to close this issue since it's launching. IMO the other issues listed may not be related.


Tweaks to template to use the string and endpoint

Tweaks to the template/tutorial to not use the object, and instead directly point to the blob endpoint and ensure consistency with the rest of the guide

@christianreddington : Thanks for your contribution to the Azure documentation! The author, @tfitzmac, has been notified to review your proposed change.

@christianreddington - thanks for making another improvement to the docs. #sign-off


Unpin nightly toolchain

With https://github.com/rust-lang/rust/issues/112831 fixed, we can unpin the nightly toolchain again.
Should not be merged before the first 2023-06-20 (or later) nightly build with all required components is available.

Since the CI checks that the toolchain is indeed unbroken, this doesn't need to be a draft.


Setup gitflow

[x] add contribution rules to CONTRIBUTING.md
[x] rename development branch to develop and make it default (if it isn't default yet)
[x] make both develop and master branches protected
[x] enable PR reviews
[x] disable squash and rebase merging
[x] setup milestones (invalid, undecided and 0.1.0 or any other appropriate version)

Done.


Mirror service fails with NPE on mirroring OSVs

Steps to reproduce:

Login with admin
Navigate to Vulnerability Sources under settings
Select Ecosystem to mirror and update the configuration
Restart hyades service (this is to get around the scheduled task)
Check Mirror Service logs

Failed to parse Json object into Bom {}: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance oforg.hyades.dto.OsvDto$Reference: cannot deserialize from Object value (no delegate- or property-based Creator): this appears to be a native image, in which case you may need to configure reflection for the class that is to be deserialized  at [Source: (String)"{"summary":"Improper authorization in Jenkins Embeddable Build Status Plugin bypasses ViewStatus permission requirement","schema_version":"1.4.0","severity":[{"score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N","type":"CVSS_V3"}],"database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2022-07-05T22:59:57Z","nvd_published_at":"2022-06-23T17:15:00Z","cwe_ids":["CWE-862"]},"aliases":["CVE-2022-34180"],"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vu"[truncated 1459 chars]; line: 1, column: 453] (through reference chain: org.hyades.dto.OsvDto["references"]->java.util.ArrayList[0])
Mirroring works for NVD and Github advisories. It failed for following ecosystems tried -  maven, ruby gems, go. Potentially failing for other ecosystems too

This was fixed with #427


Memes

Model out the concept of a meme and how that will work in the library

https://en.wikipedia.org/wiki/Meme


Latest 0.5.0 release contains restricted dependencies

Describe the bug
The DEPENDENCIES file in the latest release tag does contain two restricted libraries. It seems, that there hasn't been license information available, for that specific version of the dependencies at the time the file was created.
To Reproduce
N/A
Expected behavior
Creating a release should only be done, when there are no restricted or rejected dependencies present in the DEPENDENCIES fiel. The file has to be up-do-date of course.
Screenshots/Error Messages
N/A
Context Informations
blocking Quality Gate #714
Possible Implementation
re-running the Dash license tool

The newly created release 0.5.1 does only contain "approved" libs now.
What I am unsure about is, if we need to still fix the DEPENDENCIES file for 0.5.0
@AngelikaWittek could you provide some insights on that?

As I understood, creating a bugfix release with updated dependencies is fine here, right @AngelikaWittek?
Therefore I will close the issue, but still hope, that future release will only be created with approved libs :)

@SebastianBezold  since this is closed can i mark the TRG 7.04 in #714  done?
Thanks

Oh yes, just checked the TRG even though the issue is already closed


test(client test): add some client test and fix some test bug

add some client test and fix some test bug

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@d2979ce). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff            @@
##             master       #7   +/-   ##
=========================================
  Coverage          ?   38.55%
=========================================
  Files             ?        5
  Lines             ?      236
  Branches          ?        0
=========================================
  Hits              ?       91
  Misses            ?      140
  Partials          ?        5

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Kernel not starting behind proxy

There are a lot of problems that I faced while even downloading the kernel, as are documented in other issues and questions. I managed to work around them and set the kernel up, but now I am unable to start a scala kernel in the notebook.
Error getting scaladex infos:   download error: Caught java.net.ConnectException: Connection refused (Connection refused)
I tried adding the following options to kernel.json, but they made no difference:
"env": {     "JVM_OPT": "-Dhttp.proxyHost=<IP_ADDRESS> -Dhttp.proxyPort=3128 -Dhttps.proxyHost=<IP_ADDRESS> -Dhttps.proxyPort=3128"   }
I added the options in argv itself, which at least changed the error, but I am unable to do any more progress. Are there any other settings I can try to make this work?
Error getting scaladex infos:
  download error: Caught java.io.IOException: Unable to tunnel through proxy. Proxy returns "HTTP/1.0 302 Moved Temporarily" (Unable to tunnel through proxy. Proxy returns "HTTP/1.0 302 Moved Temporarily")```

Closing as a duplicate of https://github.com/almond-sh/almond/issues/157.


24 May 2021 - Product Control Common Template Meeting Minutes

Date
Monday, MAY 24 2021 - 10am ET / 3pm GMT
Untracked attendees

Fullname, Affiliation, GitHub username

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene & roll call
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
[ ] Overview of the Data Transformation Workflow

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

WebEx info

Meeting link: https://finos.webex.com/finos/j.php?MTID=m6e9255a2368279a9f1857f176cbf2c1a
Meeting number:<PHONE_NUMBER>
Password: J2SqF2Kp5X2
Call-in:

Join by video system: Dial<EMAIL_ADDRESS>You can also dial <IP_ADDRESS> and enter your meeting number.
Join by phone: +1-415-655-0003 US Toll | +44-20319-88141 UK Toll | Access code:<PHONE_NUMBER>

hi

From Skylight IPV
@ashleymercer
@NigelHyde
@Richard-Cade-SkylightIPV
@Adam-McIlroy-Skylight

Untracked attendees

Abhishek Agarwalla / GS
Carol Zhao / RVS
Jane Gavronsky / FINOS
Kenneth Poon / GS
Mark Fisher / IHS Markit
Nigel Cobb / Regnosys
Ruddy Vincent/ ISDA


Fix graphql specification

 Issue by Tristramg
Thursday Mar 29, 2018 at 15:28 GMT
Originally opened as https://github.com/catalogueglobal/datatools-server/pull/76

This is the same as #68 just against dev, as it was the blocking point, and the PR creator is currently on other projects.

Tristramg included the following code: https://github.com/catalogueglobal/datatools-server/pull/76/commits

 Comment by abyrd
Monday Apr 02, 2018 at 06:38 GMT

Clearly we want to follow the GraphQL spec so I'll merge this and we'll just have to update our UI accordingly. Thanks for rebasing this @Tristramg.


Enable Ctrl+C support

I noticed this block of disabled code, which should either be completed/included, or removed.
⚠ I am not necessarily in favor of including this feature. The two acceptable outcomes appear to be including this code (similar to what I've done here, possibly with modifications), or simply removing the code altogether.

Codecov Report

Merging #267 into master will decrease coverage by <.01%.
The diff coverage is 30%.

@@            Coverage Diff             @@
##           master     #267      +/-   ##
==========================================
- Coverage   24.32%   24.31%   -0.01%
==========================================
  Files         197      197
  Lines      112379   112421      +42
  Branches    11208    11213       +5
==========================================
+ Hits        27331    27335       +4
- Misses      85021    85059      +38
  Partials       27       27

Flag
Coverage Δ

#2015
24.31% <30%> (-0.01%)
:arrow_down:

#2017
24.31% <30%> (-0.01%)
:arrow_down:

#Debug
15.77% <0%> (-0.01%)
:arrow_down:

#Release
14.85% <0%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

src/TraceEvent/Utilities/command.cs
13.15% <30%> (-0.17%)
:arrow_down:

src/PerfView/StackViewer/StackWindow.xaml.cs
34.39% <0%> (-0.04%)
: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 da21a66...5b2393d. Read the comment docs.

It has been a while, but I believe the reason I pulled this code out is that it does not establish a useful invariant because sub-processes of the processes that are directly started might still live (and this is super-common (e.g. batch file that spawns MSBUILD which spawns other tools ...)
This is best solved by OS features (process groups etc), but I have not investigated exactly how to make that work.
Thus my recommendation is to remove it, since the 'right way' to do the feature works in a completely different way.

Thus my recommendation is to remove it, since the 'right way' to do the feature works in a completely different way.

On further thought, I totally agree with this.


Add sqlite3 database

Work done

add another option in init command to choose database

modify resolver output according to database selection, currently only the create method for mysql and sqlite

WOW! Thinks are improving so fast! Really great job!
I'm astonished by quality of your PR. This one is true masterpiece.
Really like the new architecture config approach. Logged couple questions and suggestions but nothign major. I will wait with verification after you response.
Graphback for the win!


bug(Mat-Datepicker): Aria-label is not recognized by voiceover in iPhone

Reproduction
For iPhone
Steps to reproduce:

Launch the Datepicker example from angular material docs.
Start the voice over in iphone
Swipe over the dates

I think this is happening may be because of tabindex is not updating from -1 to 0 when keydown in safari or swipe right in iPhone Safari.
Expected Behavior
It should read the aria-label date for eg. June 26th 2020.
Actual Behavior
It is just reading the date like 26, 27 and soon.
For Android
Steps to reproduce:

Launch the Datepicker example from angular material docs.
Start the talkback in Android
Swipe over the dates

Expected Behavior
It should read the aria-label date for eg. June 26th 2020.
Actual Behavior
It is just reading the date like June 26th 2020 disabled and soon.
Environment

Angular: 9.0.2
CDK/Material: 9.2.4
Browser(s): safari
Operating System (e.g. Windows, macOS, Ubuntu): iOS

Hi, anyone please help me for this issue.

I spent some time looking into it, but from what I could tell and from Googling around, it looks like VoiceOver on iOS can just decide not ignore the aria-label and there isn't much we can do about it. Technically we can have the label inside an invisible element in each cell, but that could degrade the experience for users that have different screen readers.

Thank you Kris for the Input, I already tried this solution and it works.


SSH Keys

 Issue by viglesiasce
Friday Aug 18, 2017 at 18:29 GMT
Originally opened as https://github.com/danisla/terraform-google-k8s-gce/issues/2

Add SSH keys so at least the NAT box can access the master. In the future we should setup a separate jumpbox alongside the NAT for this purpose.

 Comment by viglesiasce
Monday Aug 21, 2017 at 20:48 GMT

I'd like to have a separate jumpbox from the NAT since all traffic will be heading through the NAT box.
What I did was setup a jumpbox in the same network then used sshuttle to connect to it in order to hop to the master. As for SSH keys, I just added mine to the project metadata.

 Comment by danisla
Monday Aug 21, 2017 at 18:27 GMT

I agree, the module should accept some list of public keys that are allowed.
Today, per the docs in the README for the example, you can use the NAT gateway as a jumpbox to get to the master like below.
gcloud compute ssh --ssh-flag="-A" \
  $(gcloud compute instances list --filter=nat-gateway-us-central --uri) \
  -- ssh $(gcloud compute instances list --filter='name~k8s-.*master.*' --format='get(name)')

 Comment by danisla
Monday Aug 21, 2017 at 20:57 GMT

Ok we should add the bastion host and how to add SSH keys to the example docs.


[DOCFIX]Update wording for copyToLocal command in docs/_data/table/en/operation-command.yml

Update wording for copyToLocal command in docs/_data/table/en/operation-command.yml
Update
"Copy the specified file from the path specified by "remote path" to a local destination."
to
"Copy the file specified by "remote path" to a local destination."

alluxio-bot, check this please

alluxio-bot, check this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17585/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.master.JournalShutdownIntegrationTest.multiMasterJournalStopIntegration
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/17586/
Test PASSed.


Odd steady-state government expenditures result in UBI experiment on Compute Studio

I tried two UBI experiments on OG-USA in CS:

https://compute.studio/PSLmodels/OG-USA/121 which is $500/month/adult and $300/month/child
https://compute.studio/PSLmodels/OG-USA/122 which is the same but also increases the capital share from 0.35 to 0.5

Economic aggregates look to be in the expected direction for (1):

But in (2), the steady-state government expenditure differences are the opposite sign compared to the transition path:

Seems odd. cc @rickecon as we discussed this yesterday.

Just noticed a C/S error related to this sim. I'll post the results in a minute. Sorry about that.

@MaxGhenis Thanks for pointing this out.  I'm receiving and error on C/S when I try to download the results (I want to see what G is in the baseline and reform) -- maybe @hdoupe can help me identify the issue with that.
But it looks like the issue you are seeing is likely a result of the gamma parameter not being held constant between the baseline and reform runs.  Line 78 of functions.py filters parameters that should remain constant between the baseline and reform runs.  There is a typo there for the gamma and epsilon parameters, which read gamma_s and epsilon_s.  I'll open a PR to fix this and hopefully that solves the issue.

https://compute.studio/PSLmodels/OG-USA/122/
d3593070-83dc-4b8e-910e-2312e1b812a9_renderable.zip

https://compute.studio/PSLmodels/OG-USA/122/
d3593070-83dc-4b8e-910e-2312e1b812a9_downloadable.zip

https://compute.studio/PSLmodels/OG-USA/121/
347ddfd8-dacc-4820-ba86-431e5615e81e_downloadable.zip

Fix is up. Sorry about that!

@hdoupe is amazing and got my "fix" up quick.  BUT, that wasn't it.  I did remove some unused parameters, but the gamma parameter is fixed (see here).
The issue you are running into is that it is hard to interpret percentage changes in G when you cross zero.  The baseline in (1) results in positive G in the SS.  The baseline in (2) results in negative G in the SS.  Both (1) and (2) have G highly negative in the SS.  So the percentage changes you see are computed with a crossing of zero in case (1).  E.g., in (1) we have: G_baseline = 0.00188766, G_reform=-0.0989779.  Percentage change = (-0.0989779 - 0.00188766)/ 0.00188766 = -53.43 (-5343%) and in (2) we have: G_baseline = -0.039526 , G_reform=-0.2109212.  Percentage change = (-0.2109212 - -0.039526)/ -0.039526 = 4.33 (433%).
Note that tax revenue is negative in the reform in (2) in all years after 2025.  Because of this it takes massive negative amount of government spending to stabilize the budget.  OG-USA will solve with unrealistic policies like this, but sometimes the output is hard to understand (and shouldn't really be used to evaluate policy) because we are pulling resources out of thin air when necessary by allowing G to go negative indefinitely.

Interesting, thanks for looking into it @jdebacker! And thanks @hdoupe for the quick fix.


Add preloading screen

Description
issue solved: #196
Please include a summary of the change and which issue is fixed. List any dependencies that are required for this change.
Fixes #(issue_no)
Replace issue_no with the issue number which is fixed in this PR
Screenshots

Checklist

[ ] Tests have been added or updated to cover the changes
[ ] Documentation has been updated to reflect the changes
[ ] Code follows the established coding style guidelines
[ ] All tests are passing

Previous Preloading is conflicting with ours ones
Have a look Ones you reload the site

Previous Preloading is conflicting with ours ones
Have a look Ones you reload the site

@thestarsahil Hey, I checked actually here you also use lazy loading so both are run in their time you can check below video the
https://github.com/Counselllor/Counsellor-Web/assets/94003231/7cdcfb48-4374-4e17-8652-f68d276051f7

Resolve the conflict and generate once again !

@thestarsahil Can you merge this pr


Error with @partial-block returning calling parent partial

// inline partial simply returning @partial-block
{{#*inline "myPartial"}}
  {{> @partial-block }}
{{/inline}}

// render partial
{{#> myPartial}}
  {{> myPartial}} // <-- @partial block should be empty for this invocation, but it is not...
{{/myPartial}}

When executing this template I get RangeError: Maximum call stack size exceeded.
It seems that recursive invocation of partial receives @partial-block from parent invocation of same partial. When passing @partial-block explicitly no error is thrown:
// inline partial simply returning @partial-block
{{#*inline "myPartial"}}
  {{> @partial-block }}
{{/inline}}

// render partial
{{#> myPartial}}
 {{#> myPartial}}{{/myPartial}} // <-- empty partial block works
{{/myPartial}}

I'm having a problem with he same issue. I want a partial to have an optional partial-block which works out ok. But if it is nested inside a different partial and called without a partial block then it gets the parent block.
Imo
{{#> myPartial}}{{/myPartial}}
and
{{> myPartial}}
Should be the same, as neither are receiving any partial block content.
And if this is intended to be like that then at least it should be possible, perhaps with a custom handlebars helper, inside the partial to know if the @partial-block it had was its own or one that was passed down from a parent. Then the partial could choose to ignore any blocks that were not passed directly to it.

Which version of Handlebars are you seeing this issue in? 4.0.6?

@alekbarszczewski I have good news and bad news. The good news is that 4.0.6 fixes the bug you ran into. The bad news is that now your code results in a different error: Error: The partial @partial-block could not be found. This is because, as currently implemented, the block argument to a partial block template is not optional.
Unfortunately, the design of partial blocks (starting in #1018) was split across several issues and the final implementation was under-specified. That said, I don't see any indication that the syntax you employ was intended to be supported.

I think the issue here is that a partial that is not called as a block partial can get a partial block if it is nested inside a different partial.
I believe {{> myPartial}} should always have an empty @partial-block, if it gets its parents block then that block will contain itself which seems an odd behaviour.
See examples below
// inline partial simply returning @partial-block
{{#*inline "myPartial"}}
something
{{#if @partial-block}}
{{> @partial-block }}
{{else}}
something else
{{/if}}
{{/inline}}
// render partial
// works:
{{#> myPartial}}
something entirely different
{{/myPartial}}
// works
{{> myPartial}}
// does not give intended output
{{#> myOuterPartial}}
Hello
  {{> myPartial}}
{{/myOuterPartial}}
// works
{{#> myOuterPartial}}
Hello
  {{#> myPartial}}
    world
  {{/myPartial}}
{{/myOuterPartial}}
// works
{{#> myOuterPartial}}
Hello
  {{#> myPartial}}{{/myPartial}}
{{/myOuterPartial}}

@lawnsea Thanks for the answer. Indeed 4.0.6 fixes this issue as you said.
I did not know that it is possible to check for @partial-block existance using {{#if @partial-block}} (thanks @andreasryland !). For me it solves the issue.

Ok, thanks for confirming, @alekbarszczewski.
@andreasryland please file a separate issue. I agree that the current behavior is underspecified and odd.


completions and modules don't work together

The completions script uses just --summary to fetch a list of recipes. A recipe bar inside module foo is listed as foo::bar, however module recipes can't be invoked like this ("Justfile does not contain recipe foo::bar").
I'm not sure the best solution although I do personally find foo::bar easier syntax to read as foo bar in my mind looks like a recipe foo that takes a parameter bar.
I wonder whether foo::bar should be added as additional valid syntax to run a module's recipe?

Yah, this is definitely annoying.
would have actually liked to have different recipes be tab separated in the output of just --summary, so that recipes in modules could be space separated, i.e., if there's a recipe foo and a recipe bar in module baz, just --summary would output foo\tbar\sbaz, so then you could split on tabs to the valid recipes. Unfortunately, this would break any scripts which relied on splitting the output of just --summary on spaces, or on whitespace, so I opted to use the :: syntax instead. Eventually, when recipes can have dependencies that are in other modules, I'll probably wind up using the same syntax for dependencies:
mod baz

foo: baz::bar

I'm not opposed to adding foo::bar as an additional syntax to call recipes in modules from the command line. It seems a bit inelegant to add it just to make the lives of completion scripts easier, but I think some people will prefer that syntax anyone, and if it becomes the actual syntax for dependencies in other modules, being able to use that syntax on the command line makes sense.

Another thing that the completion scripts could do is split on ::, but I have basically never touched the completion scripts personally, and always left them to other brave souls, so I don't know how annoying this would be to do.

Differentiating between spaces and tabs in completion results sounds messy to me, and like you said, probably backwards-incompatible.
Developers tend to be used to the concept of namespace separators, and :: is a common one.
In the past I've wanted to use : to create categories of recipe, e.g. make:migration but couldn't because : is not valid in a recipe name. I would use this feature to put all the make recipes in make.just and reference them as a module, which would tidy things up.
Unfortunately if invoking module recipes by :: became the only way, the output of just --list would probably need to change from the neat tabbed output to a flat list with module recipes listed as foo::bar, otherwise it wouldn't be clear how to invoke them.
Not sure what's best either way, so just sharing my thoughts.

Unfortunately, this would break any scripts which relied on splitting the output of just --summary on spaces

Not even sure if that'd be something worth doing as (at least with bash) it's not even the completion script's job to split up the input:
https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html#index-COMP_005fWORDS
It does mention COMP_WORDBREAKS but imo completions are fragile enough even without trying to change the defaults.

Unfortunately if invoking module recipes by :: became the only way, the output of just --list would probably need to change from the neat tabbed output to a flat list with module recipes listed as foo::bar, otherwise it wouldn't be clear how to invoke them.

I'd definitely allow both :: separated and space separated from the command line, since I personally like space-separated, and space is one character, whereas :: is two characters, and requires shift.

Not sure if that'd be something worth doing as (at least with bash) it's not the completion script's job to split up the input:

Ahh, good catch. So I guess separating by tabs wouldn't work anyway.

Fixed in #1809, recipes can now be invoked on the command line with path syntax, i.e., foo::bar.

Nice. Thanks.


TV Card does not power on TV

I am running the current latest release but seem to have a strange issue. The TV card works great on both my Samsung TVs. However, neither card I have set up for them will turn the TVs on (will turn it off though).
I have no other integrations for the TVs installed and the power toggle works 100% of the time directly inside the Samsung TV integration by ollo69. I have tried changing some of the settings in the TV integration such as the method used to turn the TV on etc but these changes have no impact within the tv card itself

Same here.

Have you tried
        custom_keys:
          power:
            icon: mdi:power
            service: media_player.toggle
            service_data:
              entity_id: media_player.samsungtv_smart

This worked too on my samsung, thanks.


Disable a day or a set of days for whole calendar

Is there a way to disable a day or multiple days for the whole calendar?
I'm working on showing slots for specific day and there are some days that are not available for booking
So I was wondering if we can disable a day like Monday for whole calendar.

the Behaiver U want as Define the dates that can be selected. The function receives (currentDate, selectedDate) and should return a true or false whether the currentDate is valid or not
isValidDate?: (currentDate: any, selectedDate: any) => boolean;
u can add it to your Date calnder
and add to the calnder Cpmponent
isValidDate={validDate}
this should return false for specfic day and true for the other
const validDate = current => current.day() !== 0
while week start at sun from 0
so here sunday is not a valid date and it's disabled
i hope it helps

I'm using Calendar component and there a prop for disabledDays which accepts an array
https://github.com/Kiarash-Z/react-modern-calendar-datepicker/blob/0cd7478b2fda3f755f0128a2ba1244346ed9eba0/src/Calendar.js#L162
I can't find this isValidDate prop with this Calendar component.

I'm using Calendar component and there a prop for disabledDays which accepts an array of individual dates to be disabled
https://github.com/Kiarash-Z/react-modern-calendar-datepicker/blob/0cd7478b2fda3f755f0128a2ba1244346ed9eba0/src/Calendar.js#L162
I can't find this isValidDate prop with this Calendar component.

i told u mate u can add logic like it in ur package it self wihout damage ur package
you can make a helper fuction to do it for u , any way i requested that featuer the day before i hope they add it

This would be a great feature. Writing custom functionality for this doesn't make sense, and you'd have to calculate it from now until the end of time.

I have created a pull requests that contains a feature to disable specific week days and to forcely enable specific calendar days.
For example: disable every monday and friday and then enable a specific date (like monday, even though mondays are disabled via that disabledWeekDays feature.
#224

I have created a pull requests that contains a feature to disable specific week days and to forcely enable specific calendar days.
For example: disable every monday and friday and then enable a specific date (like monday, even though mondays are disabled via that disabledWeekDays feature.
#224

any updates on this ?


[Bug]: Update deployed app-pack-gen services to use newest version.

related to https://github.com/unity-sds/unity-ads-deployment/issues/166 and https://github.com/unity-sds/unity-ads-deployment/issues/168
A new version of app-pack-gen is relseasd (0.4.1) which uses a new stage-out container. This is available if run manually but is not yet available through the service. Please update the app-pack-gen version being used or complete the above ticket to enable the users to choose a specific version.

Duplicate of #176
Fixed by setting umask inside builder when deployed before installing Python packages.


Minor schema fixes

Related issues
Refs: None
Describe the changes made in this pull request

Make some minor schema fixes (discovered by checking against schema.yaml)
Remove schema.yaml, as schema.json replaces it

Instructions to review the pull request
git clone this repo
git checkout this branch
python3 -m venv env
source env/bin/activate
pip install --upgrade pip setuptools wheel
pip install -r requirements.txt
python3 schema_poc.py -d data.yml -s schema.json  # <- should be quiet

Request review or recreate once #198 is fixed :sob:

Closing as described in #199.


cli-plugin-e2e-nightwatch breaks builds on 32 bit systems

Version
3.0.0-beta.6
Reproduction link
http://CannotProvide.NeedsSpecificServer.com
Steps to reproduce
Including cli-plugin-e2e-nightwatch in any build that runs on 32 bit systems breaks the build (in my case it is a dated continuous integration server). This seems to happen because cli-plugin-e2e-nightwatch has a dependency on chromedriver > 2.35, and the last available version of chromedriver that is compatible/available for 32 bit systems is 2.33.
What is expected?
Ideally the build should run on 32bit systems
What is actually happening?
Installation of chromedriver fails, thus breaking the build.

Is there any specific functionality in chromedriver that cli-plugin-e2e-nightwatch depends on, or is it possible to make it request a lower version of chromedriver, thus allowing me to explicitly set 2.33.2 instead ? At the moment even if my package.json specifies exact 2.33.2, it gets upgraded to (incorrect) latest version, due to dependency from cli-plugin-e2e-nightwatch.
At the moment I'm forced to remove the cli-plugin-e2e-nightwatch plugin altogether, but I hope it's possible to enable it for 32 bit builds.

The default nightwatch config requires chrome-driver here:
https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-plugin-e2e-nightwatch/nightwatch.config.js#L17
you should probably overwrite the like mentioned here:
https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-e2e-nightwatch#configuration
So you would create your own nightwatch.config.js file and add this:
module.exports = {
  selenium: {
    cli_args: {
      'webdriver.chrome.driver': require('chromedriver').path
    }
  },
}

That is just the config copied over 1:1, but since now the file is in your poject's root, it should require the chromedriver version which you installed in your project's /node_modules (the other version, the dependency of the e2e plugin, should be nested in the plugin's own /node_modules sine two different versions would be installed)

Hi @LinusBorg - thanks for the answer, a quick question/doubt - how will this help with the npm dependency? The problem is already on npm install, due to request of https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-plugin-e2e-nightwatch/package.json for version 2.35. This version cannot be installed on 32bit systems - therefore I don't think it will even reach a stage where the nightwatch config can be used as it will fail resolving dependencies. Or am I missing something? I have to admit I'm no npm expert, but I think dependency resolution comes before nightwatch can kick in?

Well, I can't test this since I don't have access to a 32bit system.
Are you saying the installation process breaks / throws an error because chrome-driver doesn't build on 32bit systems? Well, then you are probably right, my solution won't work.
If it installs fine, then maybe it can also be required fine, and would only break if actually used (which we don't since we replace it before hat?)
What I am hoping for was that it doesn't break on install/require already, so we can replace it with your specific version through the customization.
If you install your desired version of chrome-driver to your project, your /node_modules would look like this:
- node_modules
-- chrome-driver *(2.33.2)*
-- @vue
-- -- cli-plugin-e2e
-- -- -- node_modules
-- -- -- -- chrome-driver *(2.5.0)*

So while the plugin would require 2.5.0, you would directly replace that config with yours, which requires 2.33.2,
To be perfectly honest, if that all doesn't work - I don't think we want to pin an outdated version in the package.json and force people to use that just  to support outdated 32-bit systems.

Yes, chrome driver stopped releasing 32bit versions some time ago, which in turn made the npm wrapper package stop support it too. Basically, at this point when I run npm install the process errors and doesn't go any further than that.
Again, I'm not an npm expert (I'm much more of java dev) but doesn't npm work similarly to mvn or gradle in conflict resolution? I tried enforcing 2.33.2 but it still fails because npm uses the ^2.35 request from cli-plugin-e2e. When I try to npm install, npm insists to go with 2.36 anyway because cli-plugin-e2e requires 2.35 this as a minimum. I think if the dependency there was ^2.33.2 it would be marked as satisfied and not try to install something that cannot be installed.
Now, I understand you don't want to get people to use lower chromedriver version if they can use higher, but surely they still can if the dependency in cli-plugin-e2e says ^2.33.2 - it will install the latest possible, right? Unless, of course, someone (like me) explicitly requests exactly 2.33.2 in their package.json - but only in such case (explicit override in json of the main project) it would not use the latest.
Of course feel free to correct me if my understanding of how npm resolves transitive deps is incorrect - but that seemed to be the case from my experience with it so far.

Due to the new versioning strategy of chromedriver - they now align their major version numbers with Chrome, we're expecting a new major version bump every six weeks. And this certainly conflicts with Vue CLI's release cycle.
So, since 4.0.0-alpha.1, chromedriver is a peer dependency of @vue/cli-plugin-e2e-nightwatch, you can install any version you want in your project's package.json.


Keyboard navigation not working

MacOS Big Sur 11.6
MacBook Pro (16-inch, 2019)
I am bringing up the popup via a keyboard shortcut (Shift+cmd+V), but then neither the arrows nor the numbers work to select an option. No option is highlighted by default (not sure if there should be). I have to use the mouse to pick what I need. Let me know if I can help with any diagnostics.

This issue is happening again? I have "Clipy" checked within the the Accessibility tab of Security and Privacy.


Persist descriptive device identifier in PumpEvent object

Request from @ps2. What should be stored? Just the RileyLink's name?

I came around in our discussion.  I think pumpID is the only thing required here.  Is that already covered then as far as this ticket goes. There is still work in NightscoutUploadKit, to add pumpID.

I see pumpID in the device status uploading PR. So what should we use for the device ID? Or is that something you plan to remove?

For pump events / treatments, we don't need a 'device ID'.  But as we discussed, tracking the pump that an event came from could be a very useful thing.  I'd like to add this, even though it doesn't exist now.
The pumpID in PumpStatus struct is to know which pump the battery/res/etc was reported for, when doing devicestatus uploads.  This is not currently tracked either, but I'd like to add it.
The device id for devicestatus entries is discussed here: https://github.com/loudnate/Loop/issues/98

There was some confusion here on my part; it sounds like we don't need to store deviceID for nightscout.


Add artifact and build retention export and rules

As an end-user I want to be sure the retention settings for build and artifacts are sensible. Therefore I want the module to export and check relevant settings from Azure DevOps so I can be sure these settings are not overlooked in an audit.
Acceptance Criteria

Implemented export of build- and artifact retention
Rules with sensible default values
Rules should be configurable to end-user's compliance requirements

Build rentention
Build retention 2


Alphanumeric with characters

Currently mask string has options for numeric and/or alphabets and not special characters. What if, for no particular pattern, one needs to allow 1 or more special characters to the input.
For example, an underscore (_) : (hello_world)

Can be done with formatChars option since version 0.6.0


ValueError: Function 331/Move_screen is currently not available

Anyone know why this error keeps popping up for me? I've tried wrapping the code in multiple if statements, for example
       `new_action = [sc2_actions.FunctionCall(_MOVE_SCREEN, [_NOT_QUEUED, coord])]
        if (len(obs[0].observation["multi_select"]) >= 1):
            if _MOVE_SCREEN in obs[0].observation["available_actions"]:
                obs = env.step(actions=new_action)
            else:
                env.step(actions=[sc2_actions.FunctionCall(_NO_OP, [])])
        else:
            env.step(actions=[sc2_actions.FunctionCall(_NO_OP, [])])`

but to no avail. _MOVE_SCREEN is a part of available_actions, yet the code still crashes with the value error.
Anyone know any checks I can put in place to circumvent this?

That should work. Do you have a repro case that someone can try?


"Unable to extract course id" Error

Hi @r0oth3x49 ,
I'm getting Unable to extract course id error just after logged in.
The error rises just for linux, I also tried Windows but got no exception.
What is the problem?
Thanks.

Hi @r0oth3x49 ,
It solved just after I pull the last version. Idk why.
You can close that issue.
Thanks.


samples: sensor: dht: add longan_nano overlay

Add an overlay to use DHT11 temperature/humidity sensor in Longan Nano.

The Longan Nano neither has standard connectors nor this sensor directly on-board AFAICT so I'm not sure this overlay is gonna be useful to anyone unless they happen to connect the sensor to exact same arbitrary pin? Or am I missing something?

The Longan Nano neither has standard connectors nor this sensor directly on-board AFAICT so I'm not sure this overlay is gonna be useful to anyone unless they happen to connect the sensor to exact same arbitrary pin? Or am I missing something?

Agree with you. DHT11 is not an on-board sensor in Longan Nano (sample uses an external sensor).
The reason for adding this overlay was to provide a DHT11 example for "aosong,dht".  Existing overlay for "Nordic nRF52 DK NRF52832" provides similar example for  DHT22.


feat: Download File Preview

fix: #79

Codecov Report

Merging #115 (c224628) into main (d142570) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #115      +/-   ##
==========================================
+ Coverage   99.18%   99.18%   +0.01%
==========================================
  Files         141      141
  Lines        4861     4869       +8
  Branches      112      112
==========================================
+ Hits         4821     4829       +8
  Misses         28       28
  Partials       12       12

Files
Coverage Δ

crowdin_api/api_resources/source_files/resource.py
100.00% <100.00%> (ø)

.../source_files/tests/test_source_files_resources.py
100.00% <100.00%> (ø)


Generate JSON Schema for dry JSON from Reconfix schema.

We want to be able to generate UI forms from Reconfix schemas. We can do this by generating a JSON schema from the Reconfix schema. A seperate component will generate the UI based on this JSON schema.

Closing as obsolote.


Group indice table by relation & attribute

previous query was showing duplicated rows if fields
is contained in more than one index, resulting in
Expected:

col
pk
repl

foo
true
true

bar
false
true

Received:

col
pk
repl

foo
true
false

foo
false
true

foo
false
false

bar
false
true

Fixed by grouping in sub-query

#13


enable rsync__exclude option for synced_folder

I want to be able to specify the exclude in synced_folder at Vagrantfile.
It is compatible with vagrant api version 2 .

Any update on this?

:+1:

This has been released in v0.7.7


No logic change, just make code easier to read.

No logic change, just make code easier to read.

/azp run java - spring - tests


fix: add hp mibs

Bump pre-commit
Add CPPM-MIB
Update ARUBAWIRED-NETWORKING-OID

:tada: This PR is included in version 1.15.14 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


How to grab frames and Save .MP4 or .AVI videos from Real Sense Camera (d435 Series) in python with OpenCV?

I am using a real sense camera to grab and save infrared frames for the format mentioned in the subject line above. I have also served some tutorials that helped me initialize the frames however saving the video frames becomes a challenge. I was able to save the video but when I try to play it through the media player, the .avi file indicates that it's corrupted.
Here are the codes used for the camera for the saving problem
import pyrealsense2 as rs
import numpy as np
import time
import cv2
import os

os.chdir('D:/kjn')
device = rs.context().devices[0]
pipeline = rs.pipeline()
config = rs.config()
config.enable_stream(rs.stream.infrared, 1, 640, 480, rs.format.y8, 30)
config.enable_stream(rs.stream.infrared, 2, 640, 480, rs.format.y8, 30)
profile = pipeline.start(config)
#print(device)
device.get_info(rs.camera_info.advanced_mode)
device.sensors[0].profiles

# streaming loop
try:
    #out = cv2.VideoWriter('./labtest_video.avi',cv2.VideoWriter_fourcc('M','J','P','G'), 30, (640,480))
    out1 = cv2.VideoWriter('./labtest1_video.avi',cv2.VideoWriter_fourcc(*'DIVX'), 30, (640,480))
    while True:
        frames = pipeline.wait_for_frames()
        left_frame = frames.get_infrared_frame(1) # Left IR Camera, it allows 1, 2, no input
        if not left_frame:
            continue
        images = np.asarray(left_frame.get_data())
        out1.write(images)
        cv2.imshow('infrared', images)
        k = cv2.waitKey(1)
        if k==27:
            print('ESC')
            cv2.destroyAllWindows()
            break
finally:
    # Stop streaming
    pipeline.stop()

Additionally, how to remove the what points/patterns on the infrared frames when the real sense camera is used in a room with zero illumination?

Hi @Jondila  Given that issues with recording RealSense infrared to .avi have already been reported in https://github.com/IntelRealSense/librealsense/issues/10645 - could you try running the color and depth .avi saving script at https://github.com/IntelRealSense/librealsense/issues/2731#issuecomment-529938267 to see whether the resulting depth and color .avi file can play in your media player, please?
You can remove the dot pattern on the infrared frame by disabling the projector component of the camera and its IR emitter using Python code such as the script at https://github.com/IntelRealSense/librealsense/issues/10065 to set the instruction rs.option.emitter_enabled to a value of '0'.
Alternatively, you could keep the projector on but make the pattern invisible on the infrared image by setting Laser Power to a value of '1' with the instruction rs.option.laser_power (setting it to '0' disables the projector), as demonstrated in a Python script at https://github.com/IntelRealSense/librealsense/issues/8592#issuecomment-800257572
If you require illumination in a zero illumination environment then the camera can make use of light from an external IR illuminator lamp. Information about this is at https://github.com/IntelRealSense/librealsense/issues/2000

I am able to save the color and depth videos through python OpenCV and I can play them through a media player. I tried to record for 3 hrs and found that the depth and colored videos had more than 3 GBs while the IR video frames had just 5.5KB only.

It is possible to remove the dot pattern on the infrared by all the options provided above. But it is not possible for saving an infrared video after following the comments from the first paragraph of the comment above @MartyG-RealSense

I located another RealSense Python script that saves IR to .avi.  You can find it if you scroll down to the last script in the article at the bottom of the page at the link below, which has the title ** Open CV and Numpy integration** in its header section.
https://qiita.com/nataly510/items/c676a28a1119907a560d
Does this code work for you, please?

This code works properly on both depth and color frames, but when I change them for infrared and depth that is where the problem exists with the IR video frames. The saved file is just 5.5KB or sometimes 14KB and it seems to be corrupted. Let me try to follow the link in your comment and I will let you know of the  progress @MartyG-RealSense

Thanks very much @Jondila - please do update me with your progress.  Good luck!

Thanks very much @Jondila - please do update me with your progress. Good luck!

Thank you for sharing with me the two links in the comments above, that I have used and I have the following observations.
From the first alternative, I was supposed to save a .bag file and I can use the second piece of code to read the .bag file frames, however,
a) when I separate the .bag file into depth, infrared, and colored, and then write them to the local disc independently, only the colored one had the 185MB while the rest had 5.5KB (seems to be corrupted)
b) When I separate the actual frames without saving the .bag  format, the colored and depth frames were having playable content in the media player while the infrared had 5.5KB and sometimes 0KB (because I have done it repetitively).
My Question. Is there any format suitable for saving (writing) infrared frames because of its pixel value format (y8 or y16)? . I have tried all the format values but I haven't yet solved the existing problem
I have used the codes from the shared links

On a non-RealSense case at the link below, someone tried expressing their fourcc videowriter instruction as cv2.VideoWriter.fourcc('Y','1','6',' ')) to obtain Y16.
https://flir.custhelp.com/app/answers/detail/a_id/3387/~/boson-video-and-image-capture-using-opencv-16-bit-y16

Hi @Jondila  Do you require further assistance with this case, please?  Thanks!

Hi @Jondila Do you require further assistance with this case, please? Thanks!
Hi MartyG, I still need assistance writing a real sense camera's IR (real-time) frames. One time I tried to write with MP4 fourcc format, at least its content had 188KB but it wasn't playable content (corrupted content) on the Media Player.
Thank you for checking up. @MartyG-RealSense

I researched the subject again but found the same conclusions.  In the small number of cases where people have tried to save infrared to video with VideoWriter, they ended up with empty or corrupted files.
The reference that is the most potentially useful is the one at the link below.
https://stackoverflow.com/questions/71945367/how-to-properly-use-cv2-videowriter-to-write-depth-video-and-infrared-video-simi
In that discussion they were able to achieve a playable video with cv2.VideoWriter_fourcc(*'mp4v')

Thank you for your sincere help.
I am still trying to solve with multiple options and I might come up with a solution soon.
@MartyG-RealSense

Thanks very much @Jondila for the update - good luck!

Hi @Jondila  Do you have an update about this case that you can provide, please?  Thanks!

Case closed due to no further comments received.

Hellom, i am new here please i have a Question about intel RealSense d455. Can i use it to record multi-videos with same frames but using only one intel RealSense d455 camera?  i want to use the videos for 3D and calibrations.
Please help.
Thank you in advance.

Hi @DukeMacrocat  When you say 'multi-videos', do you want to record different types of stream (depth, RGB, infrared, etc) at the same time with a single camera?   You could do that by recording a bag file, which is like a video recording of camera data.  An advantage of a bag file is that a program can read data from it as though it is a live camera.
A simple way to record multiple streams to a bag file would be to use the RealSense Viewer tool to enable the stream types that you want to use and then click the Viewer's Record button to start and stop the recording.

@MartyG-RealSense Thank you for your reply.
I mean i want to record 2 or more videos for my 3D project. i am working on this github {https://github.com/lambdaloop/anipose} but for them they used 3 cameras to record there videos. I thought because intel Real Sense d455 camera has more than 1 camera i can use it to record the videos i need. please is it possible to use only one d455 camera.
Thank you.

As mentioned earlier in this discussion, https://github.com/IntelRealSense/librealsense/issues/2731#issuecomment-529938267 has a Python script for saving depth and RGB from a single camera as separate .avi format videos.

@MartyG-RealSense i did try it out using infrared 1 and 2 the camera is well obtained but it returns empty viedio.aiv files. i have tried the above recommended methods but i can get any that works for me.

@DukeZacharia  Whilst saving to depth and RGB to .avi works, saving infrared to .avi tends to have more problems related to empty or corrupted .avi files, as referenced above at https://github.com/IntelRealSense/librealsense/issues/10647#issuecomment-1174923523 and https://github.com/IntelRealSense/librealsense/issues/10647#issuecomment-1184501322
Some additional scripting references for saving infrared to video are at https://github.com/IntelRealSense/librealsense/issues/10645


Drag + Click + filtertaps option breaks onclick listener. Drag + Click + Treshold works.

Describe the bug
I have this moveable div. It has a drag and click listener (dragging moves the div, clicking selects it). When dragging an element (and you let go), the click handler does not get called when you click it afterwards and having options filtertaps: true and preventDefault: true. If I change filterTaps: true to treshold: 3 (which is a default parameter IIRC), the clickhandler becomes responsive again after dragging it.
Sandbox or Video
/
Information:

Use Gesture version: [v10.3.0]
Device: M1 Pro Macbook (touchpad)
OS: Macos 14
Browser: Chrome 119 and Safari 17

Checklist:

[x] I've read the documentation.
[x] If this is an issue with drag, I've tried setting touch-action: none to the draggable element.

The sandbox / video is not optional.


chore(deps): update

📚 Description
Update dependencies.
📝 Checklist

[x] All commits follow the Conventional Commit format
[x] The PR's title follows the Conventional Commit format

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Deleting GUIContainer does not delete child objects

Title describes it perfectly, deleting a GUIContainer does not delete all of it's child objects. Repeating is simple, go into the GUI Editor, create a new GUIContainer add an object to it and assign it a name, delete the container and try to create a new control using the same child object name, get existing object error, complain as you need to open the console to delete it... Rinse, wash, repeat, ect.

Unless there'd be any particular reason that the delete would need to be 'real' during gui editing, I don't think this is really a problem, and keeps the undo system clean and effective.