text:
installed package from composer disappear after installing package via NPM

What steps will reproduce the problem?

clone this repo
run composer install
install any NPM package, like tabler, npm i @tabler/core

What is the expected result?
installed package from composer not disappear
What do you get instead?
installed package from composer disappear
Additional info
this is after running composer install

and this is after install NPM package, package that previously installed disappear

Q
A

Version
1.0.?

PHP version
8.1

Operating system
Main OS is Fedora 38, but I run this app from yii3 docker image and httpd docker image

If I use that is correct, i will use foxy, i will solve it tomorrow.

authors: biladina terabytesoftw


text:
Проблема с фильтрацией. Yii 2.0.11.2

Добрый день, установлена версия "advanced"
Проблема заключается с фильтрацией таблиц по всему проекту.
Контроллер :
$searchIpFilters = new CrmIpFiltersSearch();
$dataProvider = $searchIpFilters->search(Yii::$app->request->queryParams);

return $this->render('index', [
        'dataProvider' => $dataProvider,
        'searchIpFilters' => $searchIpFilters
]);

Модель стандартная :
метод search()
$query = CrmIpFilters::find();

        $dataProvider = new ActiveDataProvider([
            'query' => $query
        ]);

        $this->load($params);

        if (!$this->validate()) {
            return $dataProvider;
        }
        $query->orderBy('created_at DESC');

        $query->andFilterWhere(['like', 'ip_address', $this->ip_address])
            ->andFilterWhere(['like', 'created_at', $this->created_at]);

        return $dataProvider;

public function rules()
    {
        return [
            [['ip_address'], 'string', 'max' => 50],
            [['ip_address', 'created_at'], 'safe'],
        ];
    }

Вьюха :
<?php Pjax::begin(['id' => 'ip-filters', 'enablePushState'=>false]); ?>
                <?php echo GridView::widget([
                    'id' => 'ip-filters',
                    'filterModel' => $searchIpFilters,
                    'dataProvider' => $dataProvider,
                    'tableOptions' => ['class'=>'table table-bordered items'],
                    'summary' => '',
                    'columns' => [
                        'created_at',
                        'ip_address',
                    ],
                ]); ?>
                <?php Pjax::end(); ?>

Все скрипты подключены, но всеравно не работает фильтрация
Единственный вариант заставить фильтроватся :
$.pjax.reload({container:'#ip-filters', push:false});
после выполнения этого кода, таблица начинает полностью нормально функционировать.
До вызова ее, ни обычная фильтрация через GET запросы, ни ajax.
Вводишь данные в input, нажимаешь Enter, и ничего не происходит, абсолютно все без ошибок.

Q
A

Yii version
2.0.11.2

PHP version
7.0.15

Operating system
macOS 10.11.6

В какой версии последний раз работало?

Нивкакой, проект с Yii 1 на Yii2 переносится, там серч моделей небыло ведь, даже на чистом бутстрапе после инициализации проекта не работало. Такое ощущение что оно не инициализируется гдето, а после pjax.reload, инициализирует таблицу и все работает

<?php Pjax::begin(['id' => 'ip-filters', 'enablePushState'=>false]); ?>
                <?php echo GridView::widget([
                    'id' => 'ip-filters',

Смущает то, что идентификаторы одинаковые. Возможно, это и сбивает скрипты.
У меня на рабочем проекта с Yii 2.0.11.2 эта связка работает без огрех.

Слишком мало информации, чтобы воспроизвести. Давайте пока на форум, а потом обратно, как выясним, в чём именно проблема.

source: gharchive/issue

authors: MysteryDragon jurazubach samdark

license_type: permissive

license_source: github-api


text:
when configure multiple masters with multiple slaves, the connections object db was null

version Yii 2.0.12
version php5.6.30
Scene: multiple masters with multiple slaves,  split db and split table
When a database is switched in the list, a connection is lost. That is, $this->_masters is null and configured as one master with multiple slaves. There is no problem.
main.php
'section' => [
			'class' => 'yii\db\Connection',
			'tablePrefix' => 'tbl_',
			'masterConfig' => [
				'username' => 'username',
				'password' => 'password',
				'attributes' => [
					PDO::ATTR_TIMEOUT => 10,
				],
			],
			'masters' => [
				['dsn' => 'mysql:host=host;dbname=db_section_%;charset=utf8;'],
				['dsn' => 'mysql:host=host;dbname=db_section_%;charset=utf8;'],
			],
			'slaveConfig' => [
				'username' => 'username',
				'password' => 'password',
				'attributes' => [
					PDO::ATTR_TIMEOUT => 10,
				],
			],
			'slaves' => [
				['dsn' => 'mysql:host=host;dbname=db_section_%;charset=utf8;'],
				['dsn' => 'mysql:host=host;dbname=db_section_%;charset=utf8;'],
			],

		],

model ar
	public static function getDb() {
		$db = md5(self::$sn . self::$dataId);
		$dbNo = $db[0];

		$db = Yii::$app->get('section');

		if (false === empty($db->dsn)) {
			Yii::configure($db, [
				'dsn' => preg_replace('/[%|\w+?];charset=utf8/i', $dbNo, $db->dsn),
			]);
		} else {
			$dsn = [
				'master' => [],
				'slave' => [],
			];
			array_map(function ($master) use (& $dsn, $dbNo) {
				$masterDsn = preg_replace('/[%|\w+?];charset=utf8/i', $dbNo . ';charset=utf8', $master['dsn']);
				array_push($dsn['master'], ['dsn' => $masterDsn]);
			}, $db->masters);

			array_map(function ($slave) use (& $dsn, $dbNo) {
				$slaveDsn = preg_replace('/[%|\w+?];charset=utf8/i', $dbNo . ';charset=utf8', $slave['dsn']);
				array_push($dsn['slave'], ['dsn' => $slaveDsn]);
			}, $db->slaves);

			Yii::configure($db, ['masters' => $dsn['master'], 'slaves' => $dsn['slave']]);
		}

		$db->close();

		return $db;
	}

exception：
exception 'yii\base\InvalidConfigException' with message 'None of the master DB servers is available.' in yiisoft/yii2/db/Connection.php line 568

@cebe
thank u ,
so sorry,  i probably didn't describe the problem clearly.
my database name like db_section_0, db_section_1, ..., db_section_f.  mysql dsn was defined  in main.php like:
mysql:host=host;dbname=db_section_%;charset=utf8;
i want split database with md5 some id, example: md5(20) will output 98f13708210194c475687be6106a3b84
so the database name must be db_section_9. so i should be custom db configuration method like that.
when the yii2 framework was 2.0.5, all of code was normal, but at 2.0.12 the db connection have some problem.
forgive me, i don't know if you understand what i said.
here is a Chinese description:
    我的需求是在数据库为分库分表，Yii2需要配置为多主多从的模式，但是按照原生的写法仅支持对每一个数据库写一个配置，不支持通配模式。
    因此我需要自定义数据库配置方法，即在继承ActiveRecord类生成的model中覆写getDb方法。动态的改变配置的mysql dsn格式。
    在Yii2.0.5的时候所有的都是正常的，但是升级为2.0.12后就会出现此现象。在一个列表中第一条、第二条数据是正常的，第三条开始数据就有问题了.
    检查后发现第一条、第二条时切换数据库 open(), close() 都没问题，第三条数据开始open()的时候，连接就变成null了，跟踪代码发现在 connection.php的第563行 $db = $this->getMaster();第三次执行的时候返回null.
  目前我的解决方法是采用一主多从的模式配置Yii2的数据库配置信息。

when the yii2 framework was 2.0.5, all of code was normal, but at 2.0.12 the db connection have some problem.

Could you try git bisect to find commit, that changed behavior?

Seems like a bug with DB connection closing, that already fixed in 2.0.13.

authors: SilverFire enze vasily1985


text:
Automatic maxlength enhancements

I am suggesting applying ActiveField's automatic maxlength (by setting it to true) to passwordInput. Or probably better yet applying it to Html::activeInput() so it works with all similar input types such as email, tel, url, ...etc if created using ActiveField::input().

there is no reason to apply a maxlength to a password... for the other fields this could be done.

Already resolved, see #8486

@klimov-paul thank you for pointing that out.
@cebe my rational is that it is an HTML standard so why have it in one field type and not the other. My main interest is the other input types though.

authors: YasserHassan cebe klimov-paul


text:
Fix #17902: Ensure there are no invalid characters in URL before doing redirect in UrlNormalizer

Q
A

Is bugfix?
✔

New feature?
❌

Breaks BC?
❌

Tests pass?
✔

Fixed issues
#17902

This is not correct.

source: gharchive/pull-request


text:
fix generateActionParamComments() on only one pk

@cebe hmm yeah... probably here too...
   /**
     * Generates action parameters
     * @return string
     */
    public function generateActionParams()
    {
        /* @var $class ActiveRecord */
        $class = $this->modelClass;
        $pks = $class::primaryKey();
        if (count($pks) === 1) {
            return '$id';                               <-- return '$' . $pks[0];   // line 474
        } else {
            return '$' . implode(', $', $pks);
        }
    }

@samdark :) I have tested it but have done the changes on github... not pushed from local dev repo. Sorry my fault. Not the dot but the single quote at the end causes CI failing.
@qiangxue Will you give me right, that it is simply wrong if my primary key named i.e '$actor_id' and the generator output looks like
   /**
	 * @param integer $id
     *
	 * @return mixed
	 */
	public function actionView($actor_id)
	{

ref pull request #7049

The current code always uses $id as the action parameter (in both method signature and docblock) regardless how your primary key is named.
As I explained in the other PR, your solution is also fine. It's just that we have to make a choice, and we choose to use $id.


text:
Edge case for the backslash escape system

(;C[\\\]])
This should display a comment that looks like "\]" but the backslash doesn't get displayed.

If you go into edit mode, you'll realize the backslash is there. I think the problem is that Markdown escapes characters using the backslash. Unless we disable Markdown escaping, there's no way to fix this.

authors: fohristiwhirl yishn

repo: yishn/Sabaki

license: mit

license_source: bigquery


text:
a typo in README.md

from
dependencies {
  compile 'com.ykhdzr:flow::1.0.0'
}

to
dependencies {
  compile 'com.ykhdzr:flow:1.0.0'
}

Thanks @nestorm001 for noticing

repo: ykhdzr/Flow


text:
🛑 AleWorld is down

In ff7adc6, AleWorld (https://www.ale.world) was down:

HTTP code: 502
Response time: 399 ms

Resolved: AleWorld is back up in 39e8f53.

license: MIT


text:
add new function Test-M365DSCPowershellDataFile

Test-M365DSCPowershellDataFile is a improved version of the function Test-M365PowershellDataFile
Available tests:
'TypeValue', 'Required', 'Mandatory', 'TypeValue/Required', 'TypeValue/Mandatory', 'Required/Mandatory', 'TypeValue/Required/Mandatory'

The unit tests are failing. Could you please have a look at it?

authors: RobertDutch ykuijs


text:
请问使用sentencepiece分词做中文预训练模型是如何处理token级别任务的(例如抽取式阅读理解cmrc2018或NER任务)

例如cmrc2018,由于sentencepiece经常会把答案切分到奇怪的地方导致结果EM降低。
举个例子，原句是”1994年被任命为XXX“，答案是”1994年“。但是由于”年被“的出现频率很高，sentencepiece吧”年被“分成一个词了，结果变成”1994年被“了，这无论在训练还是测试的时候都会遇到，请问是怎么解决的？非常感谢！

补充一下，英语能够解决这个问题应该是因为英文里面空格是天然的分隔符，他可以前后找空格（在sentencepiece里应该是_下划线）来匹配答案，但是中文的sentencepiece感觉很难解决这个问题

Good catch.
目前两个阅读理解数据EM相对偏低的原因就是如此。
后续可以训练一个基于WordPiece的，不过暂时还没有具体计划。

如果没做这个预处理能达到这个效果，说明已经非常好了@ymcui

re-open if necessary.

感觉原作者没有放出中文版的模型也是纠结是用sentencepiece还是WordPiece

authors: ewrfcas roberts-sh ymcui

repo: ymcui/Chinese-PreTrained-XLNet


text:
AssertionError when training the model

Hi, I'm trying to train a model on my data. The dataset is pretty small, less than 6000 sentences. I used the first tutorial for preprocessing, everything worked just fine.
Now when I try model training I get an error:
[2022-11-19 10:42:07,824 WARNING] Corpus corpus_1's weight should be given. We default it to 1 for you.
[2022-11-19 10:42:07,825 INFO] Parsed 2 corpora from -data.
[2022-11-19 10:42:07,826 INFO] Get special vocabs from Transforms: {'src': set(), 'tgt': set()}.
[2022-11-19 10:42:07,887 INFO] Building model...
Traceback (most recent call last):
  File "/usr/local/bin/onmt_train", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.7/dist-packages/onmt/bin/train.py", line 65, in main
    train(opt)
  File "/usr/local/lib/python3.7/dist-packages/onmt/bin/train.py", line 50, in train
    train_process(opt, device_id=0)
  File "/usr/local/lib/python3.7/dist-packages/onmt/train_single.py", line 136, in main
    model = build_model(model_opt, opt, vocabs, checkpoint)
  File "/usr/local/lib/python3.7/dist-packages/onmt/model_builder.py", line 327, in build_model
    model = build_base_model(model_opt, vocabs, use_gpu(opt), checkpoint)
  File "/usr/local/lib/python3.7/dist-packages/onmt/model_builder.py", line 242, in build_base_model
    model = build_task_specific_model(model_opt, vocabs)
  File "/usr/local/lib/python3.7/dist-packages/onmt/model_builder.py", line 158, in build_task_specific_model
    encoder, src_emb = build_encoder_with_embeddings(model_opt, vocabs)
  File "/usr/local/lib/python3.7/dist-packages/onmt/model_builder.py", line 131, in build_encoder_with_embeddings
    encoder = build_encoder(model_opt, src_emb)
  File "/usr/local/lib/python3.7/dist-packages/onmt/model_builder.py", line 73, in build_encoder
    return str2enc[enc_type].from_opt(opt, embeddings)
  File "/usr/local/lib/python3.7/dist-packages/onmt/encoders/transformer.py", line 120, in from_opt
    add_qkvbias=opt.add_qkvbias
  File "/usr/local/lib/python3.7/dist-packages/onmt/encoders/transformer.py", line 103, in __init__
    for i in range(num_layers)])
  File "/usr/local/lib/python3.7/dist-packages/onmt/encoders/transformer.py", line 103, in <listcomp>
    for i in range(num_layers)])
  File "/usr/local/lib/python3.7/dist-packages/onmt/encoders/transformer.py", line 38, in __init__
    attn_type="self", add_qkvbias=add_qkvbias)
  File "/usr/local/lib/python3.7/dist-packages/onmt/modules/multi_headed_attn.py", line 118, in __init__
    assert model_dim % head_count == 0
AssertionError

I found this issue with the same error, the solution is supposed to be with hyperparameters, but I checked them and can't find the problem. Could you give a hint how to solve this? Thank you!

Thanks for the report! Now, I updated the parameters. Please remove the current files and try again with the new notebooks.

Runs now, thanks a lot!

authors: sete-nay ymoslem

repo: ymoslem/OpenNMT-Tutorial


text:
Fix support for open last workfile with AVALON_SCENEDIR

Changelog Description
Fix support for open last workfile with AVALON_SCENEDIR + cosmetics
Additional info
Resolves #5126
Testing notes:

Enable launch last workfile (= enabled by default)
Add "AVALON_SCENEDIR": "scenes" to e.g. the houdini or maya environment
Save a workfile with the Workfiles tool.
Restart the application, it should launch the existing workfile directly.

Like I've mentioned in discord communication. We didn't want to support scenedir, only for host integrations that require it. In that case it is handled by the host addon. That discussion happend few months ago, so maybe we can reopen the discussion @antirotor @mkolar @jakubjezek001 . But with that in mind, I don't know if this will be approved.

Thanks - just for context: we've been using AVALON_SCENEDIR all the time for Houdini, Fusion and Maya. So being able to have a subfolder for our workfiles for those applications will be a requirement for us for backwards compatibility and also a forward preference to still allow that behavior as it's preferred by our artists too.

We are currently using this in production 👍

I agree with the functionality, but I think we need a slightly different approach. We have some requests to make the workfile handling a little more robust, and this should be included in there. We'll prep some proposal soon hopefully.

Because we're splitting OpenPype into ayon-core and individual host addons, this PR would have to be re-created to target one of those. The PR has merit, the solution, not so much. Let's try to revisit in AYON
We're closing it down, but we'll he happy for a new PR to ynput/ayon-core repository once it's up.

authors: BigRoy iLLiCiTiT mkolar

repo: ynput/OpenPype


text:
Max: Implementation of Validate Render Passes

Changelog Description
This PR is to enhance the current validator of checking the render output before deadline publish. It does the following:

The validator Render Output for Deadline would be renamed as Validate Render Passes
The validator would not only check on the invalid render output folder but the invalid filename of render passes.

Additional info
n/a
Testing notes:

Launch Max via Launcher
Open a Renderable Scene
Create Some AOVs in Render Setting
Create Render Instance with your preferred camera(s)
Publish
If the AOVs dont have invalid name or render output folder doesn't match the max scene name, it will error out.
You can perform repair action once you encounter 7.

I did test in max 2023 with arnold render and even tho the Validator works fine for output file path (Im not sure speaking of AOVs names because I kept those at defaults) it errrors out with following error:

```
DEBUG: Response
Traceback (most recent call last):
  File "C:\Users\lbate\AppData\Local\Ynput\AYON\dependency_packages\ayon_2401161802_windows.zip\dependencies\pyblish\plugin.py", line 527, in __explicit_process
    runner(*args)
  File "C:\Users\lbate\AppData\Local\Ynput\AYON\addons\openpype_3.18.5-nightly.3\openpype\hosts\max\plugins\publish\save_scenes_for_cameras.py", line 37, in process
    new_output = RenderSettings().get_batch_render_output(camera)       # noqa
  File "C:\Users\lbate\AppData\Local\Ynput\AYON\addons\openpype_3.18.5-nightly.3\openpype\hosts\max\api\lib_rendersettings.py", line 190, in get_batch_render_output
    target_layer = rt.batchRenderMgr.GetView(target_layer_no)
RuntimeError: Unknown MAXScript exception raised.
```

it is more likely unrelated issue to the implementation of validator, I already created a PR to fix this issue: https://github.com/ynput/OpenPype/pull/6163

I have been testing arnold and redshift with on purpose wrong output file path and the Validator checks correctly and fails. Also Repair action does work and fix the wrong set output file path.

Whats still mystery to me being AOVs because neither in arnold nor redshift I was not able to produce any (as products) on DL. So only main_beauty being produced.
@moonyuet any insight how it should work or how to setup correctly?

I have been testing arnold and redshift with on purpose wrong output file path and the Validator checks correctly and fails. Also Repair action does work and fix the wrong set output file path.

Whats still mystery to me being `AOVs` because neither in `arnold` nor `redshift` I was not able to produce any (as products) on DL. So only `main_beauty` being produced.
@moonyuet any insight how it should work or how to setup correctly?

It's normal case for Arnold not producing beauty as its API limitation doesn't allow to support AOVs temprarily.
But I will check out the issue found from Redshift.

You need to make sure you turn on separate AOV Files for this case

Maybe we can somehow support for user to customize multilayering in different PRs.

@LiborBatek I have created an issue for multilayering support in the settings.
For the current stage, you need to dive into render settings and set separateAovFile to render AOVs in separate files.

authors: LiborBatek moonyuet


text:
Enhancement: Access or embed AYON's Python Script Editor in hosts

Is there an existing issue for this?

[X] I have searched the existing issues.

Please describe the feature you have in mind and explain what the current shortcomings are?
I'd like to embed the Python Console Interpreter module's script editor widget into a few hosts that internally have a very shitty scripting console, like Resolve, Fusion, Substance Painter and Cinema4D (something I've been working on in my spare time).
Each one would need its own settings registry so opening one host doesn't show the scripts stored in the other hosts. I discussed with @iLLiCiTiT something like:
registry = PythonInterpreterRegistry(suffix="fusion")
widget = PythonInterpreterWidget(registry=registry)
widget.show()

But he mentioned it's preferred to then create a dedicated controller class for the tool:

Rather having some base/default controller which has implemented default behavior. And if you want to change it then inherit from it and change some of the behavior.
Class BaseController(object):
    def init_registry(self):
        ...

class HostController(BaseController):
    def init_registry(self):
        ...

(as an example)
the controller should require to have implemented methods like get_preferences, save_preferences(self, width, height, splitter_size, tabs) and the logic underneath is up to controller
so technically you can totally ignore registry and store it where you need (in extreme cases to workfile) or to the database

How would you imagine the implementation of the feature?
Preferably it's like an extra addon that embeds itself into each of the hosts so that its logic is contained and easily enabled/disabled - maybe even an addon for an integration per host (or that might be overkill?)
Are there any labels you wish to add?

[X] I have added the relevant labels to the enhancement request.

Describe alternatives you've considered:
Live without a decent script editor in some hosts. I've in the past already hacked just the widget already into the hosts in my own branches during development for easier testing. Like for example in OpenRV which I believe currently also lives in the ynput/OpenPype#4839 PR here

Additional context:
No response
[cuID:OP-6121]

I've also wanted this a few times in AYON launched applications, e.g. Resolve, Substance Painter, etc. so transferred this to AYON core.
Maybe this could be exposed by default in e.g. the "Experimental Tools" section.

There already is a task for this. To sum up expected changes:
The UI should be 100% based on controller. Like the UI show not know from where it loads tabs and where are stored (if are stored). Current console module should disappear, instead we have to create hardcoded action in tray.
We can prepare simplified variant to host tools to show console, or as you mentioned to experimental tools.

authors: BigRoy iLLiCiTiT

repo: ynput/ayon-core


text:
Convert Flame creators to new publisher

Changelog Description
resolve #10
Make flame creators use the Creator API and new widget. Publishable products are now listed as individual instances following a similar logic than Hiero and Resolve.

Done:

[X] Convert existing creators to new Creator
[X] Redirect widget to new Creator widget
[X] Rework collectors to work with instances and sub-instances
[X] Ensure backward compatibility with legacy creators
[X] Check vertical align and review features
[X] Adjust colorspace data following https://github.com/ynput/ayon-hiero/pull/23
[X] Finalize workfile instance data serialization
[X]  report review adjustements https://github.com/ynput/ayon-hiero/pull/24

Testing notes:
In Flame:

Create a timeline with clips associated to movie and img-sequence media
From AYON Menu (right click)
Create and publish product(s) of type shot, audio, plate and review from there

Tested locally on Flame 2024.2

@jakubjezek001 I have started a draft PR aside for the review work:
https://github.com/ynput/ayon-flame/pull/36/files this is still WIP.
For the marker comment, I couldn't find any API to delete markers from within Flame hence the empty marker for now.
I looked at the API docs, the forums and the community pages... do you have any idea how this is done ?

@jakubjezek001 I have started a draft PR aside for the review work: #36 (files) this is still WIP.
For the marker comment, I couldn't find any API to delete markers from within Flame hence the empty marker for now. I looked at the API docs, the forums and the community pages... do you have any idea how this is done ?

Not aware of any solution for it. Lets keep them there for now. Users should do it manualy. We can add warning into documentation.

repo: ynput/ayon-flame


text:
Add support to run the workfile template builder on startup and simplify resolve houdini path

Changelog Description
The workfile template builder wasn't running automatically when starting up Houdini, you had to go click the button Build Workfile from template in order to trigger it instead. This PR adds the callback on startup so it automatically creates a first version of a workfile with the templated scene.
This also refactors the usage of hou.text.expandString to expand Houdini variables in the template path. It requires https://github.com/ynput/ayon-core/pull/875 but will work backwards compatible without that (but it will then just not resolve).
It also fixes the bug where hou.text.expandString would remove the double backslashes from a UNC path by escaping backslashes.
Additional info
n/a
Testing notes:

Create a profile on the Templated workfile build setting on ayon-houdini settings with Create first version enabled and a path to a template scene file
Start Houdini on a new context where no workfiles have been created yet
A new workfile scene should be created based on the templated scene

1. Launch Houdini as usual. I've few workfiles. (Build skipped)
2. Launch Houdini while skipping opening last workfile. (Build skipped)
3. Launch Houdini (without having any last files) and create first version is enabled. (Build Done)
4. Launch Houdini (without having any last files) and create first version is disabled. (didn't build.) (Build didn't continue)

@fabiaserra could you point out - from that list above what your expected behavior would be for each?
I'd assume that you'd expect 2) to also still "build", yes?

Launch Houdini as usual. I've few workfiles. (Build skipped)
Launch Houdini while skipping opening last workfile. (Build skipped)
Launch Houdini (without having any last files) and create first version is enabled. (Build Done)
Launch Houdini (without having any last files) and create first version is disabled. (didn't build.) (Build didn't continue)

@fabiaserra could you point out - from that list above what your expected behavior would be for each?
I'd assume that you'd expect 2) to also still "build", yes?

Yeah otherwise an artist could be starting a new workfile (even if there's existing ones) without being based on the template scene and we want to reduce the chances of that happening... Although the phrasing of your test cases is a bit confusing as the first two is not clear whether Create first version is enabled or disabled?
This phrasing is more clear:

Create First Version: True and Open last workfile: True
a. Launch with NO existing workfiles
b. Launch with existing workfiles

Create First Version: True and Open last workfile: False**
a. Launch with NO existing workfiles
b. Launch with existing workfiles

Create First Version: False and Open last workfile: True**
a. Launch with NO existing workfiles
b. Launch with existing workfiles

Create First Version: False and Open last workfile: False**
a. Launch with NO existing workfiles
b. Launch with existing workfiles

Having that said, I would expect the following:

Create First Version: True and Open last workfile: True
a. Launch with NO existing workfiles -> NO workfile template build
b. Launch with existing workfiles -> NO workfile template build

Create First Version: True and Open last workfile: False**
a. Launch with NO existing workfiles -> Workfile template build
b. Launch with existing workfiles -> Workfile template build

Create First Version: False and Open last workfile: True**
a. Launch with NO existing workfiles -> NO workfile template build
b. Launch with existing workfiles -> NO workfile template build

Create First Version: False and Open last workfile: False**
a. Launch with NO existing workfiles  -> NO workfile template build
b. Launch with existing workfiles -> NO workfile template build

Create First Version: True and Open last workfile: True
a. Launch with NO existing workfiles -> NO workfile template build

This should launch WITH workfile template build right? Because it would initialize to empty scene otherwise?

This should launch WITH workfile template build right? Because it would initialize to empty scene otherwise?

You are right yeah, let me update it
Create First Version: True and Open last workfile: True
a. Launch with NO existing workfiles -> Workfile template build
b. Launch with existing workfiles -> NO workfile template build
Create First Version: True and Open last workfile: False
a. Launch with NO existing workfiles -> Workfile template build
b. Launch with existing workfiles -> Workfile template build
Create First Version: False and Open last workfile: True
a. Launch with NO existing workfiles -> NO workfile template build
b. Launch with existing workfiles -> NO workfile template build
Create First Version: False and Open last workfile: False
a. Launch with NO existing workfiles -> NO workfile template build
b. Launch with existing workfiles -> NO workfile template build

Great, so in essence:
Create First Version: True
Basically, whenever an "empty scene" would initialize in Houdini - then use the template

Open last workfile: True
a. Launch with NO existing workfiles -> Workfile template build ✅
b. Launch with existing workfiles -> NO workfile template build, because it opens the existing workfile. 🔴

Open last workfile: False
a. Launch with NO existing workfiles -> Workfile template build ✅
b. Launch with existing workfiles -> Workfile template build ✅

When doing "New scene" (e.g. CTRL+N), run the Workfile Template Build ✅
Create First Version: False
Never build workfile template

Create First Version: False
Never build workfile template

Maybe, Build the workfile but never save the first version ?

Hey,
I'm back with more test runs... I've checked the code that @fabiaserra  mentioned in the PR description the code logic here on ayon-core.
As well as the test cases summarized by @BigRoy here https://github.com/ynput/ayon-houdini/pull/74#issuecomment-2329590726
anyways, I did further testing and was able to reproduce the the provided cases by using this PR and (this unmade yet core PR)
Here's my summary:

Launch with existing workfiles:
a. Skip Opening last workfile: False (default)
b. Skip Opening last workfile: True
both cases:
create_first_version: True
workfile_creation_enabled: True
created_version_workfile: False

Launch with NO existing workfiles:
a. Skip Opening last workfile: False (default)
b. Skip Opening last workfile: True
both cases:
create_first_version: True
workfile_creation_enabled: True
created_version_workfile: \storage\work\ayon_projects\Robo\Assets\Character\robococo\work\cfx\robo_robococo_cfx_v001.hip

Test Runs:
1.a
create_first_version: True
workfile_creation_enabled: True
created_version_workfile: False
current_workfile: //storage/work/ayon_projects/Robo/Assets/Character/robopopo/work/cfx/robo_robopopo_cfx_v001.hip
1.b
create_first_version: True
workfile_creation_enabled: True
created_version_workfile: False
current_workfile: None
2.a and 2.b
create_first_version: True
workfile_creation_enabled: True
created_version_workfile: \storage\work\ayon_projects\Robo\Assets\Character\robococo\work\cfx\robo_robococo_cfx_v001.hip
current_workfile: //storage/work/ayon_projects/Robo/Assets/Character/robococo/work/cfx/robo_robococo_cfx_v001.hip

Pressing Ctrl+ntriggers the build but it always boils down to the same cases above:
a. scene untitled and there's existing workfiles -> 1.b
b. scene is NOT untitled and there's existing workfiles -> 1.b
c. scene untitled and there's No existing workfile -> 2.a and 2.b

My questions regarding that code of ayon-core where a bit more in terms of the flow of the function making it a bit hard to read, something like this makes more sense to me:

tbh, I'm not sure how to fix that in my PR https://github.com/ynput/ayon-core/pull/871
also, keep in mind that I tried different combinations till I found something that fulfills the cases mentioned by BigRoy.

tbh, I'm not sure how to fix that in my PR ynput/ayon-core#871 also, keep in mind that I tried different combinations till I found something that fulfills the cases mentioned by BigRoy.

What results are you getting with the code that I shared?
To be honest, in my opinion it even makes sense to separate the Create first version toggle and the Workfile build template being enabled (although that could be implicit if a profile is set or an actual template is found). On that case... this condition would no longer be true:
Create First Version: False
Never build workfile template
And so even if a workfile version isn't created and saved... the template scene is populated, which I think aligns with the code that I shared

Create First Version: False Never build workfile template
And so even if a workfile version isn't created and saved... the template scene is populated, which I think aligns with the code that I shared

Hmm yes - I think I may have misunderstood the system or whatever. To me, dumbed down it may be best described as:

Open last workfile: When enabled, open the last workfile if it exists.
New scene workfile templates (workfile_creation_enabled?): When enabled, if a new scene is opened or host starts without opening an existing workfile then load/build a template as starting point
Create first version (create_first_version): If there are no existing workfiles, initialize my workfile as v001 and save it directly. This may include the workfile template if that was enabled and built.

Also, Pressing New Scene (CTRL+N) would never 'save'. The create first version is only upon host application launch. (Which should technically never happen anyway, because if Create first version (as I described it here) is enabled it would've already generated it at launch).

Thanks @BigRoy for the summary - I think it is exactly like that. Might be worth taking it and put it to the documentation

Updated the path template resolving to match an update in the core PR. Would be good to test again @MustafaJafar

If it is dependent on https://github.com/ynput/ayon-core/pull/875 then it should bump required ayon-core to >0.4.4 in package.py .

It is not entirely dependent - because without core 0.4.4+ it would just not trigger the resolve template. It wouldn't crash necessarily, just the feature would do nothing... which may be unwanted side effect since there would be no warning for that either.
So, shall I pin it to >0.4.4 @MustafaJafar @iLLiCiTiT ?

imo. it's not a necessary. because it'll work perfectly fine with regular paths.
However, support Houdini environment in the paths will be 0.4.4+

Just wanted to link this other PR https://github.com/ynput/OpenPype/pull/6286 here which uses some function naming that I think is much nicer. It's all in Maya - which isn't preferred - at best we can make that DCC-agnostic and trigger it somehow in core without having to duplicate the idea everywhere. But, as said.. just wanted to link it.

authors: BigRoy MustafaJafar antirotor fabiaserra iLLiCiTiT

repo: ynput/ayon-houdini


text:
Polish Styling

Style Components
Style Pages

[x] Login Component Styled
[x] Signup Component Styled
[x] Navbar Styled

[x] footer/root styled

[x] modals styled
[x] darkmode created


text:
提交苹果审核的时候出现警告，ios13开始使用 webview 的应用不再允许提交

ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs . See https://developer.apple.com/documentation/uikit/uiwebview for more information.
以上是苹果邮件的警告内容，而这个警告是因为 WeChat 的库使用了 webview 导致的，把这个库移除就没出现警告了。

@little-snow-fox  这个警告貌似不是 webview 导致的问题，检查你的 App 是否应用了苹果的推送通知，启用了的话需要在 Apple Developer 后台配置并生成对应的 provisioning profiles 配置文件, 重新打包 ipa 发版。

实在抱歉，错误邮件复制错误了
ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs . See https://developer.apple.com/documentation/uikit/uiwebview for more information.

@M1seRy 实在抱歉，错误邮件复制错了
ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs . See https://developer.apple.com/documentation/uikit/uiwebview for more information.

@M1seRy 实在抱歉，错误邮件复制错了
ITMS-90809: Deprecated API Usage - Apple will stop accepting submissions of apps that use UIWebView APIs . See https://developer.apple.com/documentation/uikit/uiwebview for more information.

在iOS应用程序运行在8之后,使用WKWebView类,而不是使用UIWebView。

@orzhtml 是的，我看了微信SDK的更新日志，最新的SDK1.8.6.1才开始移除UIWebView。
日志内容：SDK1.8.6.1: 短信授权登录使用的UIWebview切换成WKWebview。
目前这个开源库使用的SDK版本似乎有些年份，加上我需要使用跳转小程序的功能，我唯一的解决方案是Fork这个开源库然后更换新的SDK。
安卓SDK并没多大变化，更换很容易，但是是IOS版本接口变化比较大，导致修改地方比较多，而且无法确定是否所有修改地方都稳定，所以没提交合并请求。

可以提供一下 新的1.8.6 sendReq 的方法吗 现在变成void了不是bool了

@orzhtml 是的，我看了微信SDK的更新日志，最新的SDK1.8.6.1才开始移除UIWebView。
日志内容：SDK1.8.6.1: 短信授权登录使用的UIWebview切换成WKWebview。
目前这个开源库使用的SDK版本似乎有些年份，加上我需要使用跳转小程序的功能，我唯一的解决方案是Fork这个开源库然后更换新的SDK。
安卓SDK并没多大变化，更换很容易，但是是IOS版本接口变化比较大，导致修改地方比较多，而且无法确定是否所有修改地方都稳定，所以没提交合并请求。

坐等大神的Fork合并

@little-snow-fox  能把你fork修改过的库放出来吗？谢谢～

@KingAmo 稍微给我几天时间，待我确认修改后的库没问题就放出来

@M1seRy 已经写完了，打算发布，但不知道是提交合并好，还是创建新的开源库，因为代码变动太大，几乎等于重写，主要接口的方法名称和参数都被我重写过了，使用方式也不一样。担心推送合并的话，会影响到正在使用的用户，特别是生产环境。

@M1seRy 对了，用了最新的 wechat SDK 后，IOS 提交审核的 UIWebView 警告没了。

@little-snow-fox 先提 pr。

主仓库打tag，发合并升大版本，提示老项目用老版本，新项目用新版本，不会有什么问题的

大佬，先提上来看看吧？-.-

@M1seRy 好的，我这两天抽空整理下，然后提交一个合并请求

已经提交合并，不过似乎 CI 不通过，这得花不小时间来处理。 #526

大佬们预计何时发布新版本啊  盼望着能用

大佬们预计何时发布新版本啊 盼望着能用

你直接先用大佬 Fork 的版本最快了

@orzhtml fork出去的版本 怎么通过yarn安装？

@RodgerLai 我刚刚发布了一个新的库，你可以临时使用 react-native-wechat-lib

@little-snow-fox 辛苦了大神  我先体验下（不需要兼容老的写法）  有问题我及时反馈出来。

@little-snow-fox 十分感谢!

authors: KingAmo M1seRy RodgerLai jlala little-snow-fox mozillo orzhtml

repo: yorkie/react-native-wechat


text:
🛑 Api bnovus-qa is down

In be9ee62, Api bnovus-qa (https://manager-api.qa.rexmas.com/admin) was down:

HTTP code: 504
Response time: 10169 ms

Resolved: Api bnovus-qa is back up in fd3ba71 after 8 minutes.

repo: yorkijr/rexmas-uptime


text:
9th parameter is transformed to number 8

I found out that if my function has exactly 9 parameters, the value of the 9th one is always replaced with the value 8.
Test case:
var async, await, test;

async = require('asyncawait/async');

await = require('asyncawait/await');

test = async(function(a, b, c, d, e, f, g, h, i) {
  console.log("a: " + a);
  console.log("b: " + b);
  console.log("c: " + c);
  console.log("d: " + d);
  console.log("e: " + e);
  console.log("f: " + f);
  console.log("g: " + g);
  console.log("h: " + h);
  console.log("i: " + i);
});

await(test('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'));

Output is:
a: a
b: b
c: c
d: d
e: e
f: f
g: g
h: h
i: 8

If I add one/remove one parameter from the function, everything is fine. If I remove the async part of the test method, everything is fine: the parameter value is unchanged.
What is going on here! :-)
Node version v4.1.2, asyncawait version 1.0.3.

Hi @mdarveau,
Thanks for reporting this. There was a bug in the source where the nine argument was being clobbered. That scenario was clearly untested before you came along!
I've fixed the issue, added a test, and published v1.0.4 to npm. Can you please confirm that the issue is resolved?

Ah, javascript and variable scope...
Thank you for the quick response!
Manuel

authors: mdarveau yortus

repo: yortus/asyncawait


text:
[BUG] Not supported to Nvidia 4090

Please use Discussions to ask questions.
Describe the bug
When I install torchdistill==0.3.3 and torchvision==0.13.1, it did not support my cuda version (12.0).
I assume the problem is the torch library is supporting my cuda version.
Environment (please complete the following information):

OS: Ubuntu 20.04 LTS
Python ver: 3.7
torchdistill ver: v0.3.3

Additional context
Is it possible if you can update some of the libraries so that those who are using the new GPU can also interact with your repo directly? Thank you.

Hi @allent4n
To use torchdistill with some recent GPUs right now, you have two options:

Install torchdistill from the repository (Do not use scripts/configs under legacy/ in this case)
Create a conda environment, install older version of CUDA that is compatible with  torchvision==0.13.1, and then pip3 install torchdistill

As you can see in commit logs after v0.3.3, the next release of torchdistill is almost ready, but the documentation is work in progress and I cannot complete it soon because it's a very busy season for submitting/reviewing papers.
If either the 1st or 2nd options does not work for you, feel free to reopen this issue and share more details.

repo: yoshitomo-matsubara/torchdistill


text:
Make error

Following build instructions. On make command:
Makefile:8: /make/project.mk: No such file or directory
make: *** No rule to make target `/make/project.mk'.  Stop.
Did I miss something?

Did you install esp-idf?
https://github.com/espressif/esp-idf

Got esp-idf installed configured and woking, but came across this build error:
AR build/app_update/libapp_update.a
CC build/arduino/cores/esp32/libb64/cdecode.o
make[1]: *** No rule to make target cores/esp32/libb64/cencode.o', needed by libarduino.a'.  Stop.
make: *** [component-arduino-build] Error 2
Any help would be appreciated.

@ysdndev
Everything works fine?
If it works well, please close the issue

Sorry, haven't had a chance to test. Close for now. Thanks!

authors: younghyunjo ysdndev


text:
判断值为空的问题

为了您的问题能得到及时准确解答，请认真填写下面各个选项，感谢您的配合。

当前使用的UReport的具体版本号：

2.2.4-Release

遇到的问题描述：

使用条件格式的时候要判断单元格为空该怎么表达?
尝试了 ''，null，NULL都不行

涉及到的异常信息（完整异常信息）：

相关截图：

判断为空字符串用''或""，为null则直接用null，如：
A1=='' || A1==null

authors: lokamir youseries

repo: youseries/ureport


text:
consolidate TabletConn and Gateway interfaces

This is the first pass. More improvements may be possible.

LGTM I wanted to do the same thing last week, but was waiting for Erez's change to be in so we didn't have to merge his SplitQueryV2 retirement. Since he's out this week, I was gonna do it anyway... so thanks!

authors: alainjobart sougou

repo: youtube/vitess


text:
cloned.module.linear = FinalLinearObserver(cloned.module.linear)

Hi，
我自己的模型最后一层不是linear，而是自己构建的其他模块名字。我应该怎么替换它呢？
如果我直接注释这一行代码的话，会出现如下错误：
ndexError: index 0 is out of bounds for dimension 0 with size 0
谢谢

我增加了一个vgg16的例子，可以供你参考一下。
https://github.com/youzhonghui/gate-decorator-pruning/blob/4f8759645741bcc08479068ed8ea4db315d405ff/run/vgg16/vgg16_prune_demo.py#L116

如果最后一层不是Linear的话，可能需要自己实现处理代码(这边只提供了最后是Linear的代码)。原因是之前的卷积层Filter变少了，那么最后一层输入的特征图的尺寸就变了，所以需要处理。

authors: cvJie youzhonghui

repo: youzhonghui/gate-decorator-pruning


text:
How to work on iOS 16.4 in SwiftUI.

Hi, @yoxisem544.
Thank you for your amazing tool.
I have a few questions.
When I set your tools on iOS 16.4 in SwiftUI, I can't tap list column and my app's layout is not working well.
And I can't move to a detailed page. The preventing screenshot function is working well.
How do I fix it? Thank you.

can you try adding
if #available(iOS 16, *) {
return "_UITextContainerView"
}
to getHiddenContainerTypeInStringRepresentation

It's not work.

Hi,
I've try to run in all ios16.* versions and its working fine. I created a template for you can test if you want. https://github.com/vitor-otero/testScreenShot16.git
If you have any trouble let me know. Cheers 🍻

It just doesn't work for me, the screenshot is made. I tested on a Simulator with this code:
    var body: some Scene {
        WindowGroup {
            NavigationStack {
                ScreenshotPrevent(isProtected: true) {
                    MyElement()
                }
            }
            .environmentObject(...)
            .environmentObject(...)
        }
    }

I use iOS 16.4

@acmpo6ou @vitor-otero @zihjielitw @mmdock @shun77768  ScreenShield is a similar library that provides a simple way to protect your app's content from being captured or recorded by screenshots and screen recordings, supported in iOS 17 as well.
ScreenShield

authors: JayantBadlani acmpo6ou mmdock shun77768 vitor-otero zihjielitw


text:
How to view/edit/delete options to each record?

I am trying to use edit/delete/view buttons to all the rows. How Can I achieve this?

The typical approach to this is to have a dedicated column for the buttons. You can tell DataTables to call a javascript function for rendering a column. Your Javascript function can then render the buttons.
See the documentation at https://github.com/ypnos-web/cakephp-datatables/wiki/Callback-functions
As you can see there, you can also pass extra arguments from PHP to the callback function. That allows you to pass e.g. any markup/style options or the targets of the buttons. E.g. from the view:
columns => [
    [
        'searchable' => false,
        'sortable' => false,
        'name' => 'Users.id',
        'data' => 'id',
        'render' => $this->DataTables->callback('buttonRenderer',
            [$this->Url->build('action' => 'view'), $this->Url->build('action' => 'edit')]),
    ],
    …

Then the javascript function buttonRenderer can append the id to the respective URL for each button.
Also have a look at this function:
https://github.com/ypnos-web/cakephp-datatables/blob/master/webroot/js/cakephp.dataTables.js#L88-L109
You can use it with the DataTables select plugin to make rows selectable (e.g. to trigger a visit to the view action).

Thanks... It works!!!

authors: ullas ypnos-web

repo: ypnos-web/cakephp-datatables


text:
The instruction of using the plugin is not clear!

Can you make the install more easier life, or explain step by step what to do.
Many thanks!

See #21.

authors: roysG ypresto

repo: ypresto/android-transcoder


text:
🛑 GetCannab is down

In fd929cf, GetCannab (https://getcannab.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: GetCannab is back up in fb6f3a6 after 1 hour, 6 minutes.


text:
🛑 GetCannab is down

In 4327ac7, GetCannab (https://getcannab.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: GetCannab is back up in 8036db0 after 8 minutes.


text:
[EXPERIMENT] Use action policy

https://github.com/palkan/action_policy/blob/master/lib/action_policy/test_helper.rb
https://actionpolicy.evilmartians.io/#/testing
You can't assert this, because in the controller we rescue from it 😉
assert_raises(ActionPolicy::Unauthorized) do
end

fun experiment, but I will keep pundit for now

repo: yshmarov/moneygun


text:
Option to filter out videos marked with like or dislike, i.e. thumbs up/down

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm requesting a feature unrelated to a specific site
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.03.04 (update instructions) or later (specify commit)
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
Option to filter out youtube videos that I either liked or disliked, i.e. given thumbs up/down on the UI.
I don't want to download videos I've already seen and marked with thumbs up/down.
Thanks !
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.03.04 [392389b7d]
[debug] Lazy loading extractors is disabled
[debug] Python 3.11.2 (CPython x86_64 64bit) - Linux-6.2.9-200.fc37.x86_64-x86_64-with-glibc2.36 (OpenSSL 3.0.8 7 Feb 2023, glibc 2.36)
[debug] exe versions: ffmpeg 5.1.3 (setts), ffprobe 5.1.3
[debug] Optional libraries: Cryptodome-3.17.0, brotli-1.0.9, certifi-2021.10.08, mutagen-1.45.1, sqlite3-2.6.0, websockets-10.3
[debug] Proxy map: {}
[debug] Loaded 1786 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: stable@2023.03.04, Current version: stable@2023.03.04
yt-dlp is up to date (stable@2023.03.04)

yt-dlp generally doesn't store information about the user accessing the content (such as likes/dislikes/whether a comment is yours etc), rather only interested in information about the content itself.
given that, I feel like this is out-of-scope, and better off implemented as plugin(s) for relevant extractor(s).

authors: coletdjnz yiown

repo: yt-dlp/yt-dlp

license: Unlicense


text:
Cookies not working when using the API/in a python script

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm asking a question and not reporting a bug or requesting a feature
[X] I've looked through the README
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've searched known issues and the bugtracker for similar questions including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Please make sure the question is worded well enough to be understood
Hi, I'm trying to get video information from a membership stream using a Python script. I'm trying to use a cookie file, but it doesn't appear to be working.
My script is as follows:
from yt_dlp import YoutubeDL

options = {
    "cookiesfile": 'cookies.txt',
    "verbose": True
}
with YoutubeDL(options) as ydl:
  info_dict = ydl.extract_info('https://youtu.be/DRbr7J_i5fE', download=False)
  video_url = info_dict.get("url", None)
  video_id = info_dict.get("id", None)
  video_title = info_dict.get('title', None)
  description = info_dict.get('description', None)
  print("Title: " + video_title)
  print("Description: " + description)

Which outputs:
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip) API
[debug] params: {'cookiesfile': 'cookies.txt', 'verbose': True, 'compat_opts': set(), 'http_headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en-us,en;q=0.5', 'Sec-Fetch-Mode': 'navigate'}}
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg N-110228-g4dffa564d1-20230411 (setts), ffprobe N-110228-g4dffa564d1-20230411
[debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.1.0, websockets-10.4
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1901 extractors
[youtube] Extracting URL: https://youtu.be/DRbr7J_i5fE
[youtube] DRbr7J_i5fE: Downloading webpage
[youtube] DRbr7J_i5fE: Downloading ios player API JSON
[youtube] DRbr7J_i5fE: Downloading android player API JSON
ERROR: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 715, in extract
    ie_result = self._real_extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\youtube.py", line 4176, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 1193, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)

Traceback (most recent call last):
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1702, in __extract_info
    ie_result = ie.extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 715, in extract
    ie_result = self._real_extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\youtube.py", line 4176, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 1193, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)
yt_dlp.utils.ExtractorError: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "a:\Users\uncle\Documents\Scripts\Holo\yt-dlp.py", line 10, in <module>
    info_dict = ydl.extract_info('https://youtu.be/DRbr7J_i5fE', download=False)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1556, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1585, in wrapper
    self.report_error(str(e), e.format_traceback())
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1045, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 984, in trouble
    raise DownloadError(message, exc_info)
yt_dlp.utils.DownloadError: ERROR: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.

If I run a similar command in yt-dlp using the command line, it works correctly
A:\Users\uncle\Documents\Scripts\Holo>yt-dlp -vU --cookies cookies.txt --skip-download https://www.youtube.com/watch?v=DRbr7J_i5fE
[debug] Command-line config: ['-vU', '--cookies', 'cookies.txt', '--skip-download', 'https://www.youtube.com/watch?v=DRbr7J_i5fE']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip)
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg N-110228-g4dffa564d1-20230411 (setts), ffprobe N-110228-g4dffa564d1-20230411
[debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.1.0, websockets-10.4
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1901 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: stable@2023.11.16 from yt-dlp/yt-dlp
yt-dlp is up to date (stable@2023.11.16 from yt-dlp/yt-dlp)
[youtube] Extracting URL: https://www.youtube.com/watch?v=DRbr7J_i5fE
[youtube] DRbr7J_i5fE: Downloading webpage
[debug] [youtube] Extracted SAPISID cookie
[youtube] DRbr7J_i5fE: Downloading ios player API JSON
[youtube] DRbr7J_i5fE: Downloading android player API JSON
[debug] Loading youtube-nsig.63e90c30 from cache
[debug] [youtube] Decrypted nsig ZjmXG0HYr5PVddgSL4 => 8tZVA-Iyz_P1kw
[youtube] DRbr7J_i5fE: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] DRbr7J_i5fE: Downloading 1 format(s): 303+251

If I try my original python script with a non-membership video, it prints the information correctly:
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip) API
[debug] params: {'cookiesfile': 'cookies.txt', 'verbose': True, 'compat_opts': set(), 'http_headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en-us,en;q=0.5', 'Sec-Fetch-Mode': 'navigate'}}
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg N-110228-g4dffa564d1-20230411 (setts), ffprobe N-110228-g4dffa564d1-20230411
[debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.1.0, websockets-10.4
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1901 extractors
[youtube] Extracting URL: https://www.youtube.com/watch?v=qMQ4P-vI3JI
[youtube] qMQ4P-vI3JI: Downloading webpage
[youtube] qMQ4P-vI3JI: Downloading ios player API JSON
[youtube] qMQ4P-vI3JI: Downloading android player API JSON
[youtube] qMQ4P-vI3JI: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
Title: Kyoufuu All Back (強風オールバック) / Gawr Gura Cover
Description: 🐟 twitter: https://twitter.com/gawrgura

illustration/mv: 9am
mix: ごず

Request from hololive Production to underage viewers:
Please be sure to check the link below before viewing our content.
https://en.hololive.tv/request-to-minors

I'm unsure exactly where I am going wrong with the use of the cookiefile in the python script. As shown, the cookie file is valid and works fine with the yt-dlp executable.
Any help would be great, thanks
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip) API
[debug] params: {'cookiesfile': 'cookies.txt', 'verbose': True, 'compat_opts': set(), 'http_headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en-us,en;q=0.5', 'Sec-Fetch-Mode': 'navigate'}}
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg N-110228-g4dffa564d1-20230411 (setts), ffprobe N-110228-g4dffa564d1-20230411
[debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.1.0, websockets-10.4
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1901 extractors
[youtube] Extracting URL: https://youtu.be/DRbr7J_i5fE
[youtube] DRbr7J_i5fE: Downloading webpage
[youtube] DRbr7J_i5fE: Downloading ios player API JSON
[youtube] DRbr7J_i5fE: Downloading android player API JSON
ERROR: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 715, in extract
    ie_result = self._real_extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\youtube.py", line 4176, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 1193, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)

Traceback (most recent call last):
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1702, in __extract_info
    ie_result = ie.extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 715, in extract
    ie_result = self._real_extract(url)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\youtube.py", line 4176, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\extractor\common.py", line 1193, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)
yt_dlp.utils.ExtractorError: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "a:\Users\uncle\Documents\Scripts\Holo\yt-dlp.py", line 10, in <module>
    info_dict = ydl.extract_info('https://youtu.be/DRbr7J_i5fE', download=False)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1556, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1585, in wrapper
    self.report_error(str(e), e.format_traceback())
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 1045, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "C:\Users\uncle\AppData\Local\Programs\Python\Python310\lib\site-packages\yt_dlp\YoutubeDL.py", line 984, in trouble
    raise DownloadError(message, exc_info)
yt_dlp.utils.DownloadError: ERROR: [youtube] DRbr7J_i5fE: This video is available to this channel's members on level: MemberShrimp! (or any higher level). Join this channel to get access to members-only content and other exclusive perks.

the param is cookiefile not cookiesfile

Thanks, I also had to include the absolute path, the relative was not enough
`
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.11.16 from yt-dlp/yt-dlp [24f827875] (pip) API
[debug] params: {'cookiefile': 'A:/Users/uncle/Documents/Scripts/Holo/cookies.txt', 'verbose': True, 'compat_opts': set(), 'http_headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4556.0 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', 'Accept-Language': 'en-us,en;q=0.5', 'Sec-Fetch-Mode': 'navigate'}}
[debug] Python 3.10.6 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1n  15 Mar 2022)
[debug] exe versions: ffmpeg N-110228-g4dffa564d1-20230411 (setts), ffprobe N-110228-g4dffa564d1-20230411
[debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.1.0, websockets-10.4
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1901 extractors
[youtube] Extracting URL: https://www.youtube.com/watch?v=DRbr7J_i5fE
[youtube] DRbr7J_i5fE: Downloading webpage
[debug] [youtube] Extracted SAPISID cookie
[youtube] DRbr7J_i5fE: Downloading ios player API JSON
[youtube] DRbr7J_i5fE: Downloading android player API JSON
[debug] Loading youtube-nsig.63e90c30 from cache
[debug] [youtube] Decrypted nsig 6Hi1Pkr9ff9BkB3GHG => 8EFHabmkp4L-8g
[youtube] DRbr7J_i5fE: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
Title: WATCHALONG: Star Wars: Episode IV – A New Hope (1977)
Description: HAHAHAHAH MAY THE 4TH BE WITH YOU HAHAHA
Star Wars: Episode IV – A New Hope (1977)
Film from Prime Video ! [2h 4m]
thumbnail: default shark
`

authors: CanOfSocks bashonly


text:
Add retry_status_function

Description of your pull request and other information
Some CDN's that are used by e.g. TikTok sometimes return HTTP Error 499: first byte timeout as well as 403 and other status codes that would not be retried by yt-dlp.
This PR adds a api-only config option retry_status_function that gives the user control over which status codes are retried in the http downloader.
I did not find any existing issues or feature requests for this so that is why I left it api-only for now. CLI support could be added in the future.
Without supplying the option the previous behavior is maintained and everything will behave as before.
Example
ydl_opts = dict(
    retries=5,
    fragment_retries=5,
    retry_sleep_functions=dict(http=lambda n: min(2.0 * (2.0**n), 32.0)),
    retry_status_function=lambda status: (
        (status >= 500 and status < 600) or status in [499, 403]
    ),
)

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ...

Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[x] New feature (It is strongly recommended to open an issue first)

Your desired result already be achieved without any modification to core code.
Here is an example (with a URL from #9789 that gives a guaranteed HTTP Error 403 during the download stage):
import yt_dlp

from yt_dlp.networking.exceptions import HTTPError
from yt_dlp.utils import DownloadError

ydl_opts = {
    'format': 'download',
}

url = 'https://www.tiktok.com/@_christinank_/video/7132898898951130374'

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    info = ydl.extract_info(url, download=False)

    for retry in reversed(range(3)):
        try:
            ydl.process_ie_result(info)
        except DownloadError as error:
            orig_error = error.exc_info[1]
            if retry and isinstance(orig_error, HTTPError) and orig_error.status in (403, 499):
                continue
            raise

Hi, thanks for the snippet. Yes, this seems like a viable solution.
The problem I am facing with this is that the webpage gets re-extracted for each retry. See the following pseudo code:
info = ydl.extract_info(playlist_url, download=False, process=False) # playlist iterator

for item in info:
    for retry in ...: # retry logic here
        ie_result = ydl.process_ie_result(item, download=True) # here its "Extracting URL" and "Downloading webpage" each iteration

With this logic the media url will have a fresh signature and I don't know if this will be able to bypass the intermittent 403.
Unfortunately I can only guess what is causing the 403 on their side (maybe some slow clock causing the signature to not be valid yet).
I will run this code for a bit and hope to encounter a intermittent 403 to see if it will work.

Hi, I was able to achieve what I needed by implementing my own retry logic similar to the snippet from @bashonly.
So for now this PR is no longer needed and I will close it.

authors: bashonly skirsten


text:
WIP: [kanopy] Add extractor

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

Adds basic extractor for Kanopy, curren't doesn't warn on DRMd streams, uses first library membership to view video.
Template

Before submitting a pull request make sure you have:

[X] At least skimmed through contributing guidelines including yt-dlp coding conventions
[X] Searched the bugtracker for similar pull requests
[X] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[X] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

Realize this needs some style changes to match PR requirements.

Starting getting 403s from a bunch of endpoints now, I'll reopen once I get all the request headers squared away and see if I can actually find a few more non-drm'd test cases, otherwise it's not really worth the effort for the 0.5% that are drm-free, since the site would effectively be drm-only.


text:
unable to extract thumbnail; please report this : site=https://www.franceculture.fr/emissions/

$youtube-dl --verbose https://www.franceculture.fr/emissions/la-recherche-montre-en-main/la-recherche-montre-en-main-du-mercredi-10-octobre-2018
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'https://www.franceculture.fr/emissions/la-recherche-montre-en-main/la-recherche-montre-en-main-du-mercredi-10-octobre-2018']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.01.10
[debug] Python version 2.7.15+ (CPython) - Linux-4.18.0-12-lowlatency-x86_64-with-Ubuntu-18.10-cosmic
[debug] exe versions: avconv 4.0.2-2, avprobe 4.0.2-2, ffmpeg 4.0.2-2, ffprobe 4.0.2-2, rtmpdump 2.4
[debug] Proxy map: {}
[FranceCulture] la-recherche-montre-en-main-du-mercredi-10-octobre-2018: Downloading webpage
WARNING: unable to extract thumbnail; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on u'https://media.radiofrance-podcast.net/podcast09/14312-10.10.2018-ITEMA_21845051-2.mp3'
[download] Destination: La fabrique des algorithmes de recommandation et de management -la-recherche-montre-en-main-du-mercredi-10-octobre-2018.mp3
[download] 100% of 5.10MiB in 00:04

Same issue.

authors: gycram nicolasmx

repo: ytdl-org/youtube-dl


text:
Missing Videos in YouTube Playlists

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2020.03.24
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

Log not applicable in this case.

Description

When trying to download certain playlists such as downloading an entire YouTube channel's videos, sometimes there are issues where videos will not be present in these playlists, even if they are present on the channel itself. For example, when you try to download all the video's from this channel page then you will be redirected into downloading this playlist of all of their uploads. Only, this video is missing from this playlist even though it appears on the channel, and this video appears twice at position 299 and 301 in the playlist.
Is this issue a YouTube bug or a bug with youtube-dl? Or is this some sort of user-generated error? Is there anything that can be done to remedy this if any of these are the case?

In fact, upon further investigation, I've found that the missing video reappears once again after a video in the playlist is selected, and the duplicate video is removed, but the playlist overview still shows these abnormalities. This is very annoying because youtube-dl uses the playlist overview to download playlists. Is there some way to work around this or is this just broken until YouTube fixes it?


text:
Youtube - Access is denied

I've made a program that plays audio from url streams, instead of downloading. It was all working fine until yesterday it stopped working, now some streams I cannot play . Could it be that Youtube has blocked/limited me from playing streams? I've also tried using proxies, but non of them worked.
It has been 24h since I've been denied access of streams, and doesn't seem this issue will go away. Anyone got ideas why this may be happening, or ways to prevent? Some may say "I'm not using cookies", but it worked fine without until now.

Find something that gives you an error, then do it again with --verbose.

@thegreatestminer Here's the thing, I get no error with youtube-dl, until I get the stream link provided and try playing from it.
However, he's one example
.[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '-f', 'bestaudio', '-g', 'https://www.youtube.com/watch?v=R1BtQliPi7o']
[debug] Encodings: locale cp1252, fs mbcs, out cp1252, pref cp1252
[debug] youtube-dl version 2020.03.24
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362
.[debug] exe versions: ffmpeg 4.0.2, ffprobe 4.0.2
[debug] Proxy map: {'no': '192.168.99.100'}
..
https://r2---sn-5uaeznkz.googlevideo.com/videoplayback?expire=1587872625&ei=Ea-kXr-lDqWckATjpbWIAw&ip=2600%3A8807%3Aba00%3A198e%3A599c%3Adad6%3A8d07%3A9980&id=o-AMZuKK4lp8ctTimfZ-qIKZCkir6Pu36Mg2xGKNgGBjkV&itag=251&source=youtube&requiressl=yes&mh=GV&mm=31%2C26&mn=sn-5uaeznkz%2Csn-p5qlsnz6&ms=au%2Conr&mv=m&mvi=1&pl=35&initcwndbps=1825000&vprv=1&mime=audio%2Fwebm&gir=yes&clen=2777344&dur=170.421&lmt=1577350630075910&mt=1587850895&fvip=2&keepalive=yes&c=WEB&txp=5531432&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=ALrAebAwRgIhAIO0DkD_dFLpWiJW7FwqZK-6h6fWBmGffLyxCbLUB8zQAiEAsze6CcGFzXkqFLzst9FDgkxoBK6dcJRIm0Mxt8BH9wg%3D&sig=y=wJBrTX8_cw22lfYJ_Jojlye=dKth66Fy5kMUlePcA8iCQIC85l6P4s7xeTHxD1SlhmA2ONNZ404JVlo6Tsj_rgIxeLgIQRwpLs&ratebypass=yes

Noting again, only some streams I can play, bust most of them will end up returning an Access denied from my audio client. When visiting the link in browser, this will be shown

After looking through other issues, I finally found a solution that fixed it!
For anyone that comes across this issue in the future, use --rm-cache-dir

authors: LegitSoulja thegreatestminer


text:
[formula1:f1tv] Add extractor (closes #20374)

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[ ] Improvement
[x] New extractor
[ ] New feature

Description of your pull request and other information
This adds a new extractor for https://f1tv.formula1.com/ (Issue #20374).
Please note that the download files are hosted at https://f1tv-cdn-cent-live.formula1.com which requires CipherString = DEFAULT@SECLEVEL=1 in /etc/ssl/openssl.cnf or PR #20964 on recent Linux distributions

Rebased to fix travis

So was this merged? F1tv does not work at all for the life of me.

So was this merged? F1tv does not work at all for the life of me.


text:
common.py: "ETA Unknown ETA" to "ETA Unknown"

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] Searched the bugtracker for similar pull requests
[ ] Read adding new extractor tutorial
[x] Read youtube-dl coding conventions and adjusted the code to meet them
[ ] Covered the code with tests (note that PRs without tests will be REJECTED)
[ ] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[x] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
Didn’t tick every box, but with reason. The change is so minor, there’s nothing to do there that I can see.
Currently, the output is of the form:
[download]  35.8% of 940.11MiB at 404.90KiB/s ETA 25:27
[download]  35.8% of 940.11MiB at 341.00KiB/s ETA 30:12
[download]  35.8% of 940.11MiB at Unknown speed ETA Unknown ETA
[download]  35.8% of 940.11MiB at Unknown speed ETA Unknown ETA

ETA Unknown ETA reads weird. This (untested) PR aims to change it to ETA Unknown.

This is also done in https://github.com/ytdl-org/youtube-dl/pull/29507

authors: pukkandan vitorgalvao


text:
Replace passport-openidconnect with something better

passport-openidconnect, at version 0.0.2, hasn't been updated in years and is responsible (I think) for some of the security alerts identified by Dependabot (https://github.com/ytgov/vue-template/network/alerts).
One option is openid-client, a certified Open ID Connect client for Relying Parties that supports passport.

Max has done work implementing a new library. See 2d23236.

repo: ytgov/vue-template


text:
flutter run 后出现以下问题。。。

flutter run 后出现以下问题。。。
Running "flutter packages get" in flutter_osc...
Because every version of flutter_test from sdk depends on csslib 0.14.5 which doesn't match any versions, flutter_test from sdk is forbidden.
So, because flutter_osc depends on flutter_test any from sdk, version solving failed.
使用翻墙也不行。。。

代码已做更新


text:
🛑 CMS is down

In fbb8cbd, CMS ($CMS_SITE) was down:

HTTP code: 503
Response time: 1133 ms

Resolved: CMS is back up in b0e7f54.

repo: yukbid/upptime


text:
🛑 CMS is down

In d2e8049, CMS ($CMS_SITE) was down:

HTTP code: 503
Response time: 1233 ms

Resolved: CMS is back up in dc3742a.


text:
Allow homebrew to be town loaded

Summary
Resolve #24
Work
$ make release_mac
cargo run --bin man --features man > ./tmp/ultraman.1;
    Finished dev [unoptimized + debuginfo] target(s) in 0.14s
     Running `target/debug/man`
cargo build --locked --release --target=x86_64-apple-darwin
   Compiling ultraman v0.1.0 (/Users/yukihirop/RustProjects/ultraman)
warning: use of deprecated function `dotenv::from_path_iter`: please use `from_path` in conjunction with `var` instead
  --> src/env.rs:10:25
   |
10 |     if let Some(iter) = dotenv::from_path_iter(filepath.as_path()).ok() {
   |                         ^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: 1 warning emitted

    Finished release [optimized] target(s) in 6.17s
zip -j ultraman-v0.1.0-x86_64-mac.zip target/x86_64-apple-darwin/release/ultraman ./tmp/ultraman.1 README.md LICENSE
updating: ultraman (deflated 64%)
updating: ultraman.1 (deflated 68%)
updating: README.md (deflated 63%)
updating: LICENSE (deflated 41%)

Test

LGTM

repo: yukihirop/ultraman


text:
better support for contenteditables in iframes (ckeditor, tinymce, etc)

Sorry for the extremely long delay in submitting this PR, I've had this fix on a forked copy for a while, but just recently had the time to update our version, and decided to re-submit the fix as an official PR.
This should result in no changes in behavior, but will now support textcomplete when used by contenteditables in an iframe.  This is popular with plugins such as tinymce and ckeditor.  We currently use this fix with tinymce and it works well, I haven't tested ckeditor but the fix should apply there as well.
It makes the following changes:

added detection code in init to detect whether element is contained in an iframe (popular with ckeditor, tinymce, etc)
altered logic in contenteditable to use ownerDocument instead of document or window to correctly reference parent window instead of assuming it to be document
altered positioning logic for situation where autocompleter is located in an iframe
built new dist files

Hi @kjhangiani, thanks for sending the patch.
Please check my comments. And please reset dist directory. I'll update the directory when I release the next version.

Looks like I did something similar today ... anyways, thanks :-) https://github.com/yuku-t/jquery-textcomplete/pull/253/commits/9a61b19ac4e55baa84e47cc038e6adc3e41e1d7a

@yuku-t I have made those changes and reset the dist directory.
Also, while I haven't encountered this situation, I imagine a similar problem will exist if using a textarea with autocomplete in an iframe.  I think that situation is very rare, but I imagine similar ownerDocument logic will be required there as well (and possibly positioning logic too).
If I get some time this weekend I'll try and throw a test together and confirm if it has the same bug, but just thought I should mention.
Thanks for the great addon!

Thanks for your contribution!

Hi Developers, Can you please answer to this questions? #285 Thanks

authors: amenk kjhangiani namaljayathunga yuku-t

repo: yuku-t/jquery-textcomplete


text:
Automated cherry pick of #1676: 避免重装系统时绑定秘钥后没有account信息

Cherry pick of #1676 on release/2.11.0.
#1676: 避免重装系统时绑定秘钥后没有account信息

/lgtm
/approve

authors: ioito swordqiu

repo: yunionio/onecloud


text:
fix: 策略增强

这个 PR 实现什么功能/修复什么问题:

付款模式，到期释放
最大创建机器数量限制

是否需要 backport 到之前的 release 分支:
None
/area region
/cc @swordqiu @yousong

Codecov Report

Merging #5797 into master will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master    #5797      +/-   ##
==========================================
- Coverage    6.99%    6.99%   -0.01%
==========================================
  Files         639      639
  Lines      108490   108577      +87
==========================================
- Hits         7594     7592       -2
- Misses     100313   100401      +88
- Partials      583      584       +1

Flag
Coverage Δ

#aFlag
6.99% <0.00%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/compute/models/guests.go
0.56% <0.00%> (-0.01%)
:arrow_down:

pkg/compute/models/policy_assignment.go
13.63% <0.00%> (-2.73%)
:arrow_down:

pkg/compute/models/policy_definition.go
3.96% <0.00%> (-1.67%)
:arrow_down:

pkg/appsrv/response.go
67.64% <0.00%> (-2.95%)
: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 dd1149d...0fac035. Read the comment docs.

/lgtm

authors: codecov-io ioito yousong


text:
Automated cherry pick of #8423: fix: add aliyun new region

Cherry pick of #8423 on release/3.4.
#8423: fix: add aliyun new region

Codecov Report

Merging #8425 into release/3.4 will decrease coverage by 0.81%.
The diff coverage is 5.47%.

@@              Coverage Diff               @@
##           release/3.4   #8425      +/-   ##
==============================================
- Coverage         6.22%   5.40%   -0.82%
==============================================
  Files              759     525     -234
  Lines           117145   91561   -25584
==============================================
- Hits              7289    4953    -2336
+ Misses          109197   86196   -23001
+ Partials           659     412     -247

Flag
Coverage Δ

#aFlag
5.40% <5.47%> (-0.82%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/appsrv/stats.go
0.00% <0.00%> (ø)

pkg/baremetal/utils/raid/raid.go
11.90% <ø> (ø)

pkg/cloudcommon/db/caller.go
22.43% <ø> (ø)

pkg/cloudcommon/db/db_dispatcher.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/domain.go
2.73% <0.00%> (+0.07%)
:arrow_up:

pkg/cloudcommon/db/metadata.go
5.04% <0.00%> (-0.05%)
:arrow_down:

pkg/cloudcommon/db/metadataresource.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/modelbase.go
4.59% <0.00%> (-0.09%)
:arrow_down:

pkg/cloudcommon/db/namevalidator.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/opslog.go
1.37% <0.00%> (-0.01%)
:arrow_down:

... and 280 more

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 0e3aa96...2234927. Read the comment docs.

/lgtm
/approve

authors: codecov-io ioito zexi


text:
Automated cherry pick of #8689: fix: change owner should update quota usages

Cherry pick of #8689 on release/3.5.
#8689: fix: change owner should update quota usages

/lgtm
/approve

authors: swordqiu zexi


text:
fix(cloudid): avoid location missing api-version

What this PR does / why we need it:

[x] Smoke testing completed
[ ] Unit test written

Does this PR need to be backport to the previous release branch?:

release/3.5

/area cloudid
/cc @zexi

Codecov Report

Merging #11196 (3b5e38f) into release/3.6 (b9d30c0) will increase coverage by 2.07%.
The diff coverage is 4.05%.

@@               Coverage Diff                @@
##           release/3.6   #11196       +/-   ##
================================================
+ Coverage         5.86%    7.94%    +2.07%
================================================
  Files              828      107      -721
  Lines           129133    13240   -115893
================================================
- Hits              7577     1052     -6525
+ Misses          120876    12068   -108808
+ Partials           680      120      -560

Flag
Coverage Δ

aFlag
7.94% <4.05%> (+2.07%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/apigateway/handler/auth.go
0.00% <0.00%> (ø)

pkg/apigateway/handler/auth_totp.go
0.00% <0.00%> (ø)

pkg/apigateway/handler/idp.go
1.84% <0.00%> (ø)

pkg/apigateway/handler/misc.go
0.00% <0.00%> (ø)

pkg/apigateway/handler/resource.go
0.00% <0.00%> (ø)

pkg/baremetal/cronjobs.go
0.00% <0.00%> (ø)

pkg/baremetal/manager.go
0.49% <0.00%> (-0.01%)
:arrow_down:

pkg/cloudcommon/db/lockman/inmemory.go
64.55% <20.00%> (+0.08%)
:arrow_up:

pkg/monitor/alerting/eval_context.go
34.25% <0.00%> (-3.89%)
:arrow_down:

pkg/util/imagetools/imagetools.go
40.50% <0.00%> (-2.74%)
:arrow_down:

... and 647 more

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 3d262ba...3b5e38f. Read the comment docs.

authors: codecov-commenter ioito

repo: yunionio/yunioncloud


text:
Notifications/Alerts revisited

Fixes #998
So I thought about how to go about notifications.
Conceptual proposal:
We distinguish between banners and toasts.
Banners
These are notifications that are potentially shown for a long period of time. Currently, this applies to playgroundGroupInfo and awaitingAgreement.
Toasts
These are notifications that are shown only for a very short period of time or that require immediate interaction. This applies to all other notifications we have implemented so far, which are basically just sucess or error notifications, e.g., inviteAcceptError and groupLeaveSuccess.
Implementation proposal:
Banners
There is no need to change the implementation for them, we just keep showing them fixed at the top of the screen, right below the navigation bar. See 288fc32
Toasts
Quasar has a nice plugin for toasts, they call it Notify. Basically, it wraps the QAlert component, adds some smooth animations to it, takes care of queuing and provides a very simple interface. I implemented a notifyMixin and a demo usage in 79caee9.
In contrast to a banner a toast dismisses itself automatically, either after a configurable timeout or after clicking a button on it. This is very convienient because it thus doesn't need a vuex store. At the same time, it's the only drawback  in my opinion. This is because the toast has to be triggered using a callback (done()) instead of dismissing an action. It seems to me that there is no other reasonable way to use quasar's notify plugin. But in my opinion it would be okay. Remember we had already used a done() callback anyway to clear the password fields after password change.
Please let me know what you think about it.

@tiltec Okay. Glad you like it.
@nicksellen Ah yes, that would be a nice solution, then we could indeed trigger toasts using actions.
However, I'm afraid this wouldn't help to get rid of the other callback which already exists (the "clear-password-fields-after-password-change" callback). So we would still have two different ways to trigger something... Therefore I think I'll just stick to the current approach for now. Thanks for the suggestion. Hope you didn't get sunburnt 🌞

Do you feel like adding a paragraph to the karrot docs about this? https://docs.karrot.world/

Do you feel like adding a paragraph to the karrot docs about this?

Good idea. Done via #1008

authors: mr-kojo tiltec

repo: yunity/karrot-frontend


text:
different SPPM, BDPT, VCM/Path

Hello.
In new bsdf branch I have different result when I change integrator.
VCM

Path

VCM and Path is almost same.
SPPM, darker

BDPT is broken

My camera settings for this view is
    "camera": {
        "fov": 45,
        "position": [
            -4.404,
            -0.887,
            10.913
        ],
        "dir" : [
            0,0.09, 2
        ]
    },

Restir GI

Restir PT

BDPT part is fixed. SPPM also supports env. lighting but it's supposed to be biased in the first place.
ReSTIR GI is not meant to be used with specular reflections. ReSTIR PT should be identical but I've yet to add support and validate for complex BSDFs.

SPPM goes to black on classroom scene and on torus scene

"goes to black" maybe is nans. I fix it

authors: tigrazone yuphin

repo: yuphin/Lumen


text:
Can basic-auth middleware support Fastly Compute@Edge?

Most features of Hono work on Fastly Compute@Edge. Here is example:
https://github.com/yusukebe/hono/tree/master/example/compute-at-edge
That's great Hono supports both Cloudflare Workers and Compute@Edge. But, basic-auth middleware does not work on Compute@Edge because it does not provides crypto.

The code I tried is here:
app.use('/auth', Middleware.basicAuth({ username: 'user', password: 'pass' }))

Can basic-auth middleware support Fastly Compute@Edge? We can do it with polyfill? Using  digest.hash_sha256 in C@E? If it is difficult to support C@E without dependencies, let us give up. Because, Hono must not depends any modules.
If anyone knows, let me know.

Compute@Edge does not have built-in crypto,  currently the basis-auth middleware is using crypto.subtle.digest to build the timingSafeEqual to do the constant time comparison, as you said, polyfill the digest with digest.hash_sha256 should work.
Another thing we may need to take care of it is the Buffer which is not ready in WASM either but we use it in https://github.com/yusukebe/hono/blob/master/src/middleware/basic-auth/basic-auth.ts#L36, the document gives an example polyfill with webpack, but I think it's not what we need because hono should not depend on user's webpack configure.
module.exports = { // ...
  // Shimming globals
  plugins: [
    new webpack.ProvidePlugin({
        // Polyfill the URL standard
        URL: "core-js/web/url",
        // Polyfill Node.js' buffer (requires https://www.npmjs.com/package/buffer)
        Buffer: ["buffer", "Buffer"],
    }),
  ],

Fixed on #86

authors: metrue yusukebe

repo: yusukebe/hono


text:
Code scan

test code scan workflow

rank0.out.log.zip

a quick preview
bash ank": 0}} [PerfLog] {"event": "EVALUATE", "metadata": {"file": "/workspace/flagperf/training/benchmarks/glm/pytorch/run_pretraining.py", "lineno": 110, "time_ms": 1678253161501, "rank": 0}} [PerfLog] {"event": "EPOCH_END", "metadata": {"file": "/workspace/flagperf/training/benchmarks/glm/pytorch/run_pretraining.py", "lineno": 110, "time_ms": 1678253161605, "rank": 0}} [PerfLog] {"event": "TRAIN_END", "metadata": {"file": "/workspace/flagperf/training/benchmarks/glm/pytorch/run_pretraining.py", "lineno": 124, "time_ms": 1678253161605, "rank": 0}} [PerfLog] {"event": "FINISHED", "value": {"e2e_time": 9025.794084310532, "training_sequences_per_second": 8.824550358709928, "converged": true, "final_accuracy": 0.8014000058174133, "raw_train_time": 8702.993, "init_time": 315.626}, "metadata": {"file": "/workspace/flagperf/training/benchmarks/glm/pytorch/run_pretraining.py", "lineno": 143, "time_ms": 1678253161622, "rank": 0}}


text:
unable to locate annotation results

I am trying to integrate this action into a workflow. I could see that action finishes successfully, however I cant see the annotation results.
I assume I can see the results in Annotations section in Actions tab.

Not sure exactly why but the run id was not associated with the current run:
Updating check {owner: 'prasannabhat', repo: 'iceoryx', check_run_id: 1491778842}

https://github.com/prasannabhat/iceoryx/runs/1491778842
The create checks API from GitHub is a bit mysterious since you cannot assign it to a given job or run...

It's also worth noting that the current run id cannot be retrieve from an action :disappointed:
Alternatively, we could use octokit.checks.listForRef() but it's also unreliable since it can return more than one result...

For reference, a "check run" is associated to a commit.
I can see in the checkout task of the run id 1491777786 that the ref was:
/usr/bin/git log -1 --format='%H'
'7dbdc448fe4f2c0beb5ee7ef0b534cc7c972e413'

Unfortunately, the run id 1491778842 is also using this ref:

As far as I know this is inherent to the GitHub API.
I've asked this question on the GitHub Support Community, hopefully someone will provide a solution.

@prasannabhat Could you please try again with the latest release, the annotations should now be correctly attached to the pull request: https://github.com/yuzutech/annotations-action/releases/tag/v0.2.1

@Mogztter Thank you very much for the updates.
I will try in a couple of days.

@Mogztter works now ! Thanks
https://github.com/prasannabhat/iceoryx/actions/runs/427162103

Awesome 👍
Closing this issue...

authors: Mogztter prasannabhat

repo: yuzutech/annotations-action


text:
Mapper map content

새해 복 많이 받으세요! 🌞🧧🎊
VSA Map Content의 Get/Set Entry 함수와 이를 구현할 때 필요한 관련 모듈들을 추가했습니다.
파일이 순식간에 많아졌네요.^^;;

새해 복 많이 받으세요! 🌞🧧🎊
VSA Map Content의 Get/Set Entry 함수와 이를 구현할 때 필요한 관련 모듈들을 추가했습니다. 파일이 순식간에 많아졌네요.^^;;

새해복 많이 받으세요!! 그리고 올 한해 r-type 코드도 술술 잘 풀리기를 바랍니다 ㅎㅎ 감사합니다!

이건 딴 얘기인데, 혹시 vscode 사용중이시라면 이 extension 추천합니다..! 매우 편하네요 ㅎㅎ
https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens

이건 딴 얘기인데, 혹시 vscode 사용중이시라면 이 extension 추천합니다..! 매우 편하네요 ㅎㅎ https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens

바로 깔았습니다 ㅎㅎ 기대되네요
추가 commit 들어가는 것 없는 것으로 이해했는데 (대신 본 PR의 caller 쪽 코드 추가하면서 필요시 리팩토링 하는 것으로...), 다른 의견 없으시면 merge 하도록 하겠습니다 수고 많으셨습니다!!

authors: huijeong-kim yyu-nim

repo: yyu-nim/poseidonos-rtype


text:
readline missing from CPython <3.6

CPython versions installed by pyenv prior to 3.6 are missing the readline module. It is needed for tab completion to work in the REPL.
It is included with the 3.6.0b2 installed by pyenv and tab completion works. I'm on OS X El Capitan.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/39359072-readline-missing-from-cpython-3-6?utm_campaign=plugin&utm_content=tracker%2F282009&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F282009&utm_medium=issues&utm_source=github).

pyenv will try installing readline if there's only corrupted libedit exists. Generally speaking rebuilding versions without readline should solve rhe issue
https://github.com/yyuu/pyenv/blob/master/plugins/python-build/bin/python-build#L1342

authors: brechtm yyuu

repo: yyuu/pyenv