Clone incremental models as the first step of your CI job

Contributions

[X] I have read the contribution docs, and understand what's expected of me.

Link to the page on docs.getdbt.com requiring updates
Probably this one makes the most sense https://docs.getdbt.com/docs/deploy/ci-jobs
Could also be a blog post!
Or part of some best practice guide?
Main content
Imagine that you've created a Slim CI job in dbt Cloud.

Your CI job:

defers to your production environment
runs the command dbt build --select state:modified+ to run and test all of the models you've modified and their downstream dependencies
is triggered whenever a developer on your team opens a PR against the main branch

Now imagine your dbt project looks like this:

When you open a PR that modifies dim_wizards, your CI job will kickoff and build only the modified models and their downstream dependencies (in this case: dim_wizards and fct_orders) into a temporary schema that's unique to your PR.
This build mimics the behavior of what will happen once the PR is merged into the main branch (so you have confidence that you're not introducing breaking changes), without requiring a build of your entire dbt project.
But what happens when one of the modified models (or one of their downstream dependencies) is an incremental model?
Because your CI job is building modified models into a PR-specific schema, on the first execution of dbt build --select state:modified+ the modified incremental model will be built in its entirety because it does not yet exist in the PR-specific schema aka is_incremental will be false. You're running in full-refresh mode.
This can be suboptimal because:

typically incremental models are you're largest datasets, so they take a long time to build in their entirety which can slow down development time and incur warehouse $$$
there are situations where a full-refresh of the incremental model passes successfully in your CI job but an incremental build of that same table in prod would fail when the PR is merged into main (think schema drift where on_schema_change config is set to fail)

We can alleviate the above problems by zero copy cloning the relevant, pre-exisitng incremental models into our PR-specific schema as the first step of the CI job using the dbt clone command. This way, the incremental models already exist in the PR-specific schema when you first execute the command dbt build --select state:modified+ so the is_incremental flag will be true.
Now, we'll have 2 commands for our dbt Cloud CI check to execute:

Clone all of the pre-existing, incremental models that have been modified or are downstream of another model that has been modified -> dbt clone --select state:modified+,config.materialized:incremental,state:old
Build all of models that have been modified and their downstream dependencies dbt build --select state:modified+

Because of our first clone step, the incremental models selected in our dbt build in the second step will run in incremental mode.

Your CI jobs will run faster, and you're more accurately mimicking the behavior of "what will happen once the PR has been merged into main".
Disclaimers:

dbt clone is only available with dbt version 1.6+
this strategy only works for warehouse that support zero copy cloning (otherwise dbt clone will just create pointer views)
some teams may want to test that their incremental models run in both incremental mode and full-refresh mode

Additional information
Relevant slack thread: https://dbt-labs.slack.com/archives/C05FWBP9X1U/p1692830261651829
From my "Better CI for better data quality coalesce talk:

If you use the incremental materialization in your dbt project, you should consider cloning your relevant, pre-existing incremental models into your PR-specific schema as the first step of your CI check. This will force your second step to run in incremental mode (where is_incremental is true) because now the models already exist in your PR-specific schema (via cloning). This is beneficial because it more accurately mimics what will happen when you merge your changes into production and it will save time and money by not rebuilding your incremental models (which are often large data sets) from scratch for every PR that modifies them.

Expansion on "think schema drift where on_schema_change config is set to fail" from above:
Let’s imagine you have an incremental model my_incremental_model with the following config:
{{
    config(
        materialized='incremental',
        unique_key='unique_id',
        on_schema_change='fail'
    )
}}

Now, let’s say I open up a PR that adds a new column to my_incremental_model - in this case:

an incremental build will fail
a full-refresh will succeed

If you have a daily production job that just executes a dbt build (without a --full-refresh flag), once the PR is merged into main and the job kicks off, you will get a failure. So the question is - what do you want to happen in CI?

Do you want to also get a failure in CI, so that you know that once this PR is merged into main you need to immediately execute a dbt build --full-refresh --select my_incremental_model in production in order to avoid a failure in prod? This will block your CI check from passing.
Do you want your CI check to succeed, because once you do run a full-refresh for this model in prod you will be in a successful state? This may lead to you being surprised that your production job is suddenly failing when you merge this PR into main because you didn’t realize you would need to execute a dbt build --full-refresh --select my_incremental_model in production.

Probably not a perfect solution here, it’s all just tradeoffs! Personally, I'd rather have the failing CI job and have to manually override the blocking branch protection rule so that I'm not surprised and can proactively run the appropriate command in production once I merge the PR in.
Expansion on "why state:old":
For brand new incremental models we actually want those to run in full-refresh mode in CI, because they will run in full-refresh mode in production when the PR is merged into main because they also don't exist yet in the production environment... they're brand new!

@graciegoheen I think this information would make a great Best Practices guide. We can work with @joellabes or @jasnonaz to get that started.
Like you suggested, I also think we should also talk about how dbt clone can help handle incremental models in CI in the "Continuous Integration jobs in dbt Cloud" page and possibly  in the dbt Clone command page.

Just a comment that I read this excellent post and fully agree with all points made.

Yes lmk when you're ready for me! excited to get this up into the world

@matthewshaver is this closed?

hey team, looks like this was addressed in https://github.com/dbt-labs/docs.getdbt.com/pull/4542. closing this issue but let me know if this is wrong! thank you!


fix: Use two-phase commit input ports

@jmhrpr would be a huge help if you could try out this branch to see how it behaves over the block-gap scenarios that you've been encountering.

What issue does that fix?


fix for dragged table name

Fixed the formatting of the dragged table name
This PR fixes #11372

Coverage increased (+0.002%) to 37.538% when pulling afb1bfc3b4f7120aa95b1eb685a06f966228409e on dragDropFix into cc78d6a8f09c1bd835858f50a4be2eaaf6287b2e on main.

ah okay I'll do that

No - the [ being added starts the quoted string and so anything up to the next closing bracket will be considered quoted. You can't have nested quoted strings - any other ['s inside will be treated as part of that string. This behaves just like quoted strings in most other languages - think of how you have to escape " for normal strings for example.
Make sure when you're making your changes that you're testing this yourself as well as users would - so try inserting it into statements and executing them. And adding some tests around these specific cases isn't a bad idea either.

@cssuh please merge this PR and create a port request for release/1.20 branch


applyAction should navigate to action if action is different from current route

Describe the bug
If a form has an action to another route and you use enhance as per doc it doesn't automatically navigate to the new route.
But from the doc it seems like using applyAction should apply the default browser behavior.
This doesn't seem to be the case: the action gets called but the routing doesn't happen.
Reproduction

Go to https://www.sveltelab.dev/j9dffhs0vu1rqub
Try to submit the form
Observe that the navigation doesn't happen
Try to remove the use:enhance
Submit the form
Observe that the browser correctly redirect there

Logs
No response
System Info
System:  OS: Linux 5.0 undefined CPU: (8) x64 Intel(R) Core(TM) i9-9880 H CPU @ 2.30GHz Memory: 0 Bytes / 0 Bytes Shell: 1.0 - /bin/jsh Binaries:  Node: 16.14.2 - /usr/local/bin/node Yarn: 1.22.19 - /usr/local/bin/yarn npm: 7.17.0 - /usr/local/bin/npm npmPackages:  @sveltejs/adapter-auto: "2.0.0 => 2.1.
0
@sveltejs/kit: "1.5.0 => 1.18.0 svelte: "3.54.0 => 3.59.1 vite: "4.1.4 => 4.3.8

Severity
serious, but I can work around it
Additional Information
To be clear this is only present when the action return a success, not when it return a redirect

Confirmed behavior is as reported -- looks like a 🐛

This is not a bug, it's expected behavior. If you have a form on page X that references actions on page Y you don't navigate there on success. That allows you to implement things like a newsletter signup inside a +layout.svelte which is present on all pages and where you can handle the success message/errors on the page you're currently on, not losing context. It should probably made clearer in the docs.

No, because applyAction ensures the form prop is updated which is crucial for error messages etc and sometimes for success cases, too.

Actually now that I think about it manually goto is not an option if you want to use the form object in the new page right?

It was for helping a folk in the svelte discord...he wanted to do something with the form data and than show a recap in the /rec page ..it seems a pretty reasonable use case honestly and given that's how the platform usually behave it doesn't seem wrong to thing you could do this. But I get the reasoning. Maybe it could be an option on applyAction?
Again, it's not something that I need...is just something that seemed off to me, totally ok if you prefer to leave it like this

Honestly I think it's the wrong solution to (ab)use the fact that you're redirected to the /rec page in the native case. What about error handling? That would also happen on /rec then which is not what this page is about. local.recap = ..; throw redirect('/rec'); within the action sounds like a better solution to me.

Again it's not a matter of what's better...I would probably do something like this myself if that's something that I would need. It was only a fact of being completely different from the platform.
That's it.

All good - I just wanted to point it out because sometimes feature requests are solved by doing things differently instead.

I'm with @paoloricciuti; it seems like a weird decision to make enhance incompatible with the normal HTML semantics in this one case.

https://github.com/sveltejs/kit/issues/9999#issuecomment-1556806325 explains why we need this behavior, we can't satisfy both, and getting rid of the ability of using forms in layout files without jumping through hoops is worse IMO (and a breaking change).

Honestly this seems like a bug to me too. I don't recall what discussions (if any) led to the current behaviour, but it absolutely seems like we should be navigating to the page with the action. use:enhance is supposed to emulate native browser behaviour, and not navigating seems like a very opinionated choice that clearly isn't universally beneficial

What if we let the user opt in (if we want to avoid breaking changes) or opt out (if we want to better mimick the browser by default) of this behavior with an extra parameter on applyAction?

Looking at the code and its comments it's pretty clear we made a conscious decision to do it the way it works today.

I'm abandoning the discussion on what would / wouldn't be a breaking change (I want to focus on what the right decision for the framework is -- we can come back to when it lands later). IMO, even if we did make the conscious decision that the way it works today is the way it should work, it was the wrong decision. The point of a "naked" enhance is to emulate native behavior using the client-side router so that users can sprinkle on interactivity without fully abandoning what will happen to JS-less users. The behavior should be (roughly):

If POST-ing to an action on the same page, use the current behavior; emulate a reload of the page by invalidating dependencies and populating form
If POST-ing to an action on a different page, redirect to that page on success. Populate that page's form prop.
Simpler?: Populate the form prop of whatever page happens to be rendered?

That's a very basic outline. I think whatever we do, we should chart out the possible results like a state machine and decide what the results for each state should be -- then write tests to assert that. We should be able to create a relatively-small tree (basically the cartesian product of (success, redirect, error) and (current page action, different page action). I also think that enhance, when unmodified, should be as close to native behavior as possible -- on a fast internet connection with no laggy datafetches, I shouldn't be able to tell the difference between an unmodified enhanced form and a vanilla HTML one.


Translation interferes with data

Since the table in viewEstimate is editable, when the google api replaces the text with Spanish, the system updates the content of includes and excludes to Spanish translation....lol
Just prevent the function that posts to server (update-content) after the translation from updating the db

After the page is translated, the page still allows the post to /update-content. Translation is never stored in the db because it can be translated on the client.


[iOS] after hangup the call once (terminateCall function) the background still running

I not sure it is a issue or something I done wrong,
I found if I getting a call once then hangup, meaning call terminateCall function for reset, then press home button enter background, the app still running like this:

I think may there something need to reset too.
is there any suggestion for this, thanks

I'm not sure but I think this is connected to the AVSession. This does not happen in Bowser so there should be another way to use the OpenWebRTC API to avoid this. Sorry that I don't have a better explanation right now :disappointed:

Which application? Can you describe the steps so that we can try to reproduce?

terminateCall is part of the iOS SDK, my guess is that @xelven has built his own app. The behaviour should however be the same for our NativeDemo app (I guess).
https://github.com/EricssonResearch/openwebrtc-ios-sdk/blob/master/SDK/OpenWebRTCNativeHandler.h#L62

@superdump yes yes, just @stefanalund  said, it is test app almost same with NativeDemo,  it has same issue:

after you enable the Background Modes like this:

I think is works, after I added the code [AudioSession setActive:NO error:&error] when finish the call terminateCall() and then enter background will not running anymore.
and remember reactive [AudioSession setActive:YES error:&error] before the call or connected.
thanks @superdump @stefanalund for the help and show me the way.

Good! This looks like something that should be part of the SDK. Could you please submit a Pull Request with your change? Thanks.

okay just give me more time for test this, then will do that.
give me some time to take look : )

No problem, thanks a lot!

@stefanalund @superdump I got need to update recently what I doing,
after I take look the source code of openwebrtc,
I drop [AudioSession setActive:NO error:&error] solution, because this will have chance to happen this:
2015-11-23 17:45:44.874 testWebRTC[8887:1864070] 17:45:44.874 WARNING:  [owr_main_loop] 1251:  [owr_main_loop] 1251: AURemoteIO::Stop: error 0x10000004 calling TerminateOwnIOThread
2015-11-23 17:45:44.877 testWebRTC[8887:1864439] 17:45:44.877 ERROR:    [AURemoteIO::IOThread] >aurioc> 1503: AURemoteIO@0x1729a020: IOThread exiting with error 0x10004002

and then I take look the more deep the for owr_media_session_set_send_source I believe the reason in that, because if there no call connected then won't show the red status bar, then I found the method: owr_media_session_finalize, I can't call it so I copy it out then put into reset() OpenWebRTCNativeHandler, then I think conflict between g_object_unref(transport_agent);
and
static void owr_media_session_finalize(GObject *object)
{
    OwrMediaSession *media_session = OWR_MEDIA_SESSION(object);
    OwrMediaSessionPrivate *priv = media_session->priv;
//    _owr_media_session_clear_closures(media_session);
    NSLog(@"*** *** media session object %d",media_session);
    if (priv->incoming_srtp_key)
        g_free(priv->incoming_srtp_key);
    if (priv->outgoing_srtp_key)
        g_free(priv->outgoing_srtp_key);
    if (priv->cname)
        g_free(priv->cname);
//
    if (priv->remote_sources) {
        g_mutex_lock(&priv->remote_source_lock);
        g_slist_free_full(priv->remote_sources, g_object_unref);
        priv->remote_sources = NULL;
        g_mutex_unlock(&priv->remote_source_lock);
    }
    g_mutex_clear(&priv->remote_source_lock);
    if (priv->send_source)
        owr_media_session_set_send_source(media_session, NULL);
//    if (priv->send_payload)
//        g_object_unref(priv->send_payload);
//    g_ptr_array_unref(priv->receive_payloads);
    g_rw_lock_clear(&priv->rw_lock);
//    G_OBJECT_CLASS(owr_media_session_parent_class)->finalize(object);
}

so I comment it first, and make sure it really works finish the call the red status will gone, and in the call the background status will running, may have memory leak a little bit.
please discuss with me, if I am doing wrong.


feat(plugin-chart-table): rewrite with react-table

🏆 Enhancements
Rewrite Table chart @superset-ui/plugin-chart-table with react-table, which is a headless table library already used elsewhere in Superset app.
It's highly customizable and very performant. Unlike jquery.datatables, this library does not pre-render all rows when pagination is enabled, therefore there is a noticeable performance improvement when applying on large datasets.
This plugin will eventually replace @superset-ui/legacy-plugin-chart-table, and the reusable DataTable component may replace other data table, too (including pivot table, time series table, TableCollection in CRUD list view, and SQL Lab query results preview).

This PR merges into a feature branch. Remaining TODOs before we can replace legacy-plugin-chart-table:

[x] Update sort icons
[ ] Sticky header and fixed scrollable area

OMG, so glad to see this! I can't wait to get rid of jQuery.datatables

@kristw This one is ready for re-review. The sticky head now works for the most part. Just needed to enable horizontal scrolls and add some magics to column width so very wide tables can look good.
Another issue is there is this weird scroll bar that runs over the sticky head (material-ui which also uses position: sticky has it, too):

I'll probably return to the pseudo thead approach like Ant Design and the current jquery.datatables.
Will do all these in a later PR.

@ktmud we should probably add proper pagination support to the backend (we're currently missing support for offset). I can probably throw that in pretty quickly, is that something that would benefit this work?

@ktmud we should probably add proper pagination support to the backend (we're currently missing support for offset). I can probably throw that in pretty quickly, is that something that would benefit this work?

That sounds like a separate issue but definitely a nice thing to have. I can work on that once the API is ready.

Vercel returns 404, close and reopen to see it fixes it.


ModuleNotFoundError for wmi, serial.tools, pyusbcameraindex, and pynput

If you want to post a problem/bug, to help us understand and resolve your issue please check that
you have provided at least the information below, and discard up to here:

Nuitka version, full Python version, flavor, OS, etc. as output by this exact command.

python -m nuitka --version

If you are not providing the full output. The issue cannot be solved and will be considered
invalid. The command outputs more than you think, and we are adding more all the time. We do not
want to left guessing or trying things out to reproduce your issue.

2.4.9
Commercial: 2.6.3
Python: 3.10.15 | packaged by Anaconda, Inc. | (main, Oct  3 2024, 07:22:19) [MSC v.1929 64 bit (AMD64)]
Flavor: Anaconda Python
Executable: C:\Users\ml_luke\anaconda3\envs\boson\python.exe
OS: Windows
Arch: x86_64
WindowsRelease: 11
Version C compiler: ~\AppData\Local\Nuitka\Nuitka\Cache\DOWNLO~1\gcc\x86_64\13.2.0-16.0.6-11.0.1-msvcrt-r1\mingw64\bin\gcc.exe (gcc 13.2.0).

How did you install Nuitka and Python
Did you use pip, anaconda, deb, rpm, from source, git clone, then install into a virtualenv or
not, this is very important usually and one thing, the above command does not tell us (yet).

python setup.py install from source

The specific PyPI names and versions
It should be taken from this output if there specific packages involved, e.g. numpy, you are
expected to shorten this to the relevant ones.

python -m pip list -v

altair==5.5.0
altgraph==0.17.4
annotated-types==0.7.0
anyio==4.6.2.post1
argon2-cffi==23.1.0
argon2-cffi-bindings==21.2.0
arrow==1.3.0
asttokens==2.4.1
async-lru==2.0.4
attrs==24.2.0
babel==2.16.0
beautifulsoup4==4.12.3
bleach==6.2.0
blinker==1.9.0
cachetools==5.5.0
certifi==2024.8.30
cffi==1.17.1
charset-normalizer==3.4.0
click==8.1.7
colorama==0.4.6
comm==0.2.2
comtypes==1.4.8
contourpy==1.3.1
cv2_enumerate_cameras==1.1.17
cycler==0.12.1
debugpy==1.8.9
decorator==5.1.1
defusedxml==0.7.1
dnspython==2.7.0
email_validator==2.2.0
exceptiongroup==1.2.2
executing==2.1.0
fastapi==0.115.5
fastapi-cli==0.0.5
fastjsonschema==2.20.0
fonttools==4.55.0
fqdn==1.5.1
future==1.0.0
gitdb==4.0.11
GitPython==3.1.43
h11==0.14.0
httpcore==1.0.7
httptools==0.6.4
httpx==0.27.2
idna==3.10
ipykernel==6.29.5
ipython==8.29.0
ipywidgets==8.1.5
iso8601==2.1.0
isoduration==20.11.0
itsdangerous==2.2.0
jedi==0.19.2
Jinja2==3.1.4
json5==0.9.28
jsonpointer==3.0.0
jsonschema==4.23.0
jsonschema-specifications==2024.10.1
jupyter==1.1.1
jupyter_client==8.6.3
jupyter-console==6.6.3
jupyter_core==5.7.2
jupyter-events==0.10.0
jupyter-lsp==2.2.5
jupyter_server==2.14.2
jupyter_server_terminals==0.5.3
jupyterlab==4.2.6
jupyterlab_pygments==0.3.0
jupyterlab_server==2.27.3
jupyterlab_widgets==3.0.13
keyboard==0.13.5
kiwisolver==1.4.7
markdown-it-py==3.0.0
MarkupSafe==3.0.2
matplotlib==3.9.2
matplotlib-inline==0.1.7
mdurl==0.1.2
mistune==3.0.2
narwhals==1.15.1
nbclient==0.10.0
nbconvert==7.16.4
nbformat==5.10.4
nest-asyncio==1.6.0
notebook==7.2.2
notebook_shim==0.2.4
numpy==2.1.3
opencv-python==<IP_ADDRESS>
ordered-set==4.1.0
orjson==3.10.12
overrides==7.7.0
packaging==24.2
pandas==2.2.3
pandocfilters==1.5.1
parso==0.8.4
pefile==2023.2.7
pillow==11.0.0
platformdirs==4.3.6
prometheus_client==0.21.0
prompt_toolkit==3.0.48
protobuf==5.29.0
psutil==6.1.0
pure_eval==0.2.3
pyarrow==18.1.0
pycparser==2.22
pydantic==2.10.2
pydantic_core==2.27.1
pydantic-extra-types==2.10.0
pydantic-settings==2.6.1
pydeck==0.9.1
Pygments==2.18.0
pyinstaller==6.11.1
pyinstaller-hooks-contrib==2024.10
pynput==1.7.7
pyparsing==3.2.0
pyserial==3.5
python-dateutil==2.9.0.post0
python-dotenv==1.0.1
python-json-logger==2.0.7
python-multipart==0.0.17
pytz==2024.2
pyusbcameraindex==1.0.1
pywin32==308
pywin32-ctypes==0.2.3
pywinpty==2.0.14
PyYAML==6.0.2
pyzmq==26.2.0
referencing==0.35.1
requests==2.32.3
rfc3339-validator==0.1.4
rfc3986-validator==0.1.1
rich==13.9.4
rpds-py==0.21.0
Send2Trash==1.8.3
serial==0.0.97
setuptools==75.1.0
shellingham==1.5.4
six==1.16.0
smmap==5.0.1
sniffio==1.3.1
soupsieve==2.6
stack-data==0.6.3
starlette==0.41.3
streamlit==1.40.2
tenacity==9.0.0
terminado==0.18.1
tinycss2==1.4.0
toml==0.10.2
tomli==2.1.0
tornado==6.4.2
traitlets==5.14.3
typer==0.13.1
types-python-dateutil==<IP_ADDRESS>41003
typing_extensions==4.12.2
tzdata==2024.2
ujson==5.10.0
uri-template==1.3.0
urllib3==2.2.3
uvicorn==0.32.1
watchdog==6.0.0
watchfiles==1.0.0
wcwidth==0.2.13
webcolors==24.11.1
webencodings==0.5.1
websocket-client==1.8.0
websockets==14.1
wheel==0.44.0
widgetsnbextension==4.0.13
WMI==1.5.1
zstandard==0.23.0

Many times when you get an error from Nuitka, your setup may be special
Then even a print("hello world") program will not work, please try that and report that error
instead. We do not need a report that says "Tensorflow does not work" when nothing actually works
for you. You ought to also read the User Manual and check that your setup is actually supported
already.

Once I remove wmi, serial, pyusbcameraindex, and pynput from the python script the exe file is able to run successfully, but once these packages are import in the script, the exe file will throw ModuleNotFoundError. I have tried to add various flags such as --include-module, --include-package, but none of them works.

Also supply a Short, Self Contained, Correct, Example
That demonstrates the issue i.e a small piece of code which reproduces the issue and can be run
with out any other (or as few as possible) external dependencies. Issues without this may will
likely be rejected without much consideration. Often this can be as simple as importing a package,
if this is a packaging issue, try that first.
Pointers to repositories with usage of pipenv are very welcome, archives with examples are too,
e.g. if a certain package structure is needed. This must be only source code, binaries are not
used ever by us. But beware, that e.g. we cannot click around and stuff. Still do an effort to
make the usage obvious. Having a compile script in the repo is perfect.
But this cannot be much code for non-commercial users, since that causes too much effort. We
cannot just compile your code, run it and have it download a control and command center.

I have simplified my code to just print Hello World, without those imports I can see it printed on the command prompt, but with those imports, it will produce error.

Provide in your issue the Nuitka options used
Ideally use the # nuitka-project: options feature in the code, so options and example code go
along. Alternatively state the command line.
Nuitka Options in the code

options used:
--standalone
--follow-import
--include-data-files  (for some python helper script)
--include-module  (tried one at a time between this and --include-package)
--include-package  (tried one at a time between this and --include-module)
--report

Avoid unnecessary options
Do not use --deployment as it disables all potential bug catching, we are not here to replace
what it does, remove that option the moment you face an issue and report only then.
Do not use --onefile if the issue also happens with --standalone. Minimize the use of options
as far as you can, please. Do not disable outputs with --quiet and do not disable warnings.

Note if this is a regression
If it used to work in an earlier version of Nuitka, please note what you know about that. Since
git bisect is a thing for which we do a lot of error to make it usable, this will help
dramatically to isolate the issue.

I did not try with other versions of nuitka

Can you try with the latest stable release please? 2.5.9 may already have this changed.

Hi, I tried with 2.5.9, still the same error
2.5.9
Commercial: None
Python: 3.10.15 | packaged by Anaconda, Inc. | (main, Oct  3 2024, 07:22:19) [MSC v.1929 64 bit (AMD64)]
Flavor: Anaconda Python
Executable: ~\anaconda3\envs\boson\python.exe
OS: Windows
Arch: x86_64
WindowsRelease: 11
Version C compiler: ~\AppData\Local\Nuitka\Nuitka\Cache\DOWNLO~1\gcc\x86_64\14.2.0posix-19.1.1-12.0.0-msvcrt-r2\mingw64\bin\gcc.exe (gcc 14.2.0).

So when I include those imports in the python script, the exe will report ModuleNotFoundError, but if I don't include those imports in the python script, the exe file will be able to print the 'hello world'
I have attached the sample python code as well as the command I use.
This is sample_main.py, which is the main file to build the exe. It will call sample_helper.py through subprocess.
import os
import time
import subprocess
import sys
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler

def main():

    subprocess.Popen(['python', 'sample_helper.py'])

if __name__ == '__main__':
    main()

This is the helper function, which contains the problematic imports
import os
import time
import sys
import wmi
import json
import logging
import csv
import argparse

from serial.tools import list_ports
from pyusbcameraindex import enumerate_usb_video_devices_windows

from datetime import datetime, timezone
from pynput import keyboard

def main():
    print('Hello from sample helper')

if __name__ == '__main__':
    main()

Below is the command I used to compile the exe
python .\Nuitka-2.5.9\bin\nuitka --onefile --standalone --include-data-files=./sample_helper.py=sample_helper.py --report=report.xml sample_main.py


HtmlView Font Size Binding

Hi,
I am using HtmlView in the following manner

<myToolkitExtended:HtmlView
Style="{StaticResource ArticleHtmlStyle}"
FontSize="{Binding ElementName=articlePage, Path=DataContext.ArticleDetailBodyFontSize}"
Margin="12.8"
Html="{Binding Content}" />

While this work, modifying the ArticleDetailBodyFontSize does not have any effect on rendered html content. scrolling up or down forcing rendering uses the new / modified font size. how can one ensure that font sizes changes are reflected immediately ?
Hermit

Just to verify if its a bug in HtmlView: Is the binding working if you use a ScrollableHtmlView instead of the HtmlView?

Rico,
My requirement was met by HtmlView and never tried scrollable html view as the html view is a part of list view template and the view lives within listview's scrollviewer. I could create a repro if you wish
Hermit

Just want to see if the binding is working in ScrollableHtmlView as in this control, the view is regenerated if the FontSize property is changed.. (this change detection code is missing in HtmlView)

okay give me a few mins.. in process of building a release.. will testing it and post back

Hi,
ScrollableHtmlView doesn't reflect changes to fontsize changes either
Hermit

I updated the sample apps (SampleUwpApp and SampleWindowsStoreApp) and binding FontSize there works... Can you reproduce the problem in these sample apps?

Let me take a look at sample apps tomorrow. In my beta app, I can reproduce it easily and has been raised by both internal tests and Microsoft

Ok, please inform me after your checks.. What do you mean by "raised by both internal tests and Microsoft". Are you working for MS?

nah I work for a News company developing a first party app that is to be preinstalled on Windows 10 Mobile devices. The only obvious differences are

the HtmlView is within ListView - in one of the many data templates
the Fontsize increment / decrement is stored in settings and size is computed in ViewModel and PropertyChanged event is raised.
the FontSizei is bound to VM Property.

I will try to see rework my XAML to relay on another element rather than VM Property.  You should use the ScrollableHtmlView (with HeaderTemplate and FooterTemplate) which only renders the visible html (virtualizing) so that the initila rendering (eg page load) is much faster...

Let me try using ScrollableHtmlView in the app. Whatever keeps the memory usage under control - which sadly has been a concern for a while. Didn't have much luck binding to another element in the xaml.. will need to see what else I can do

Noticed an issue with ScrollableHtmlView..
ScrollViewer.VerticalScrollMode="Disabled"
ScrollViewer.IsVerticalScrollChainingEnabled="True"
don't seem to be doing anything..  the content within the ScrollableHtmlView still responds to pull independently of the parent.
I will try and fork the repo in coming days and try to fix what I can.  In the mean time I have used a simplistic solution using
https://github.com/MacawNL/WinRT-RichTextBlock.Html2Xaml

If you dont need scrolling, you should use HtmlView

I was only referring to your previous comment which said that I shouldn't place html view within scrollviewer as it is fully rendered :)

If you need to show all html at once, use HtmlView, if you need scrolling use ScrollableHtmlView..

... do not put a HtmlView inside a ScrollViewer

... when using ScrollableHtmlView, you should not try to disable scrolling, but add your custom header and footer using the HeaderTemplate and FooterTemplate properties... otherwise it is the same as using HtmlView

thanks... in my usage html is one of the contents within the news article and all of the data including html is within listview.. I think my usage of htmlview was correct. Shame font size isn't reflecting. Will need to think of something

In the sample app, binding FontSize works for me with HtmlView and ScrollableHtmlView

But just in the latest source code, not with the latest NuGet release... the fix for HtmlView is not released yet.


chore(fp-ts): refactor createImgixFixedFieldConfig

This is part of the Gatsby fp-ts refactor.

Current dependencies on/for this PR:

main

PR #198

This comment was auto-generated by Graphite.


[AMBARI-25220] : NameNode to provide rack topology

What changes were proposed in this pull request?
NameNode should provide an option to print rack based topology of datanodes.
How was this patch tested?
The patch was tested manually. This is backport change to branch-2.6 from: https://github.com/apache/ambari/pull/2970

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5209/
Test PASSed.


Add support for hardhat + ethers v6

I'm working on a new version of the hardhat-ethers plugin and I want to make sure that it works well with typechain. From what I can see, typechain's hardhat plugin hasn't been updated yet (which makes sense, because we haven't updated our plugin :sweat_smile:).
Some comments from looking at the codebase:

The version of ethers used in @typechain/hardhat should be updated, and the dependency on @typechain/ethers-v5 should be replaced with @typechain/ethers-v6
I think some peer dependencies (@ethersproject/abi and @ethersproject/providers) in @typechain/hardhat could be dependencies. This is no strictly necessary, but reducing peer dependencies prevents conflicts down the road.
codegen/hardhat.ts in @typechain/target-ethers-v6 will need to be updated. Here I think we'll have to coordinate, but at the very least:

The new version of the plugin will be called @nomicfoundation/hardhat-ethers, not @nomiclabs.
getContractAt will also accept an Addressable as the address, so those types should be changed to string | Addressable.

I'll be working on this today and I'll comment here anything else I find.

Some other things that need to be done.
In @typechain/hardhat:

Change the default target in the config to ethers-v6

In @typechain/ethers-v6:

Add generated typings for deployContract
Change ethers.utils.BytesLike to ethers.BytesLike

I think these changes should be enough. This would mean though that the next major version of @typechain/hardhat uses ethers v6 by default. The alternative is to release a separate plugin for v6... but I don't think that makes sense here.


modify example

Codecov Report

Merging #59 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master      #59   +/-   ##
=======================================
  Coverage   41.96%   41.96%
=======================================
  Files          29       29
  Lines        1070     1070
=======================================
  Hits          449      449
  Misses        621      621

Impacted Files
Coverage Δ

src/examples/run_time_series_prediction_example.py
0% <ø> (ø)

.../run_time_series_prediction_with_runner_example.py
0% <0%> (ø)

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 e2cd406...2075e4a. Read the comment docs.


added link to zotistics for each course

Summary
Added Zotistics link to corresponding course in the course bar
https://user-images.githubusercontent.com/52259696/118753583-25eece80-b81a-11eb-978a-3b02ccb169dd.mp4
Test Plan

Verify links go to correct course dept/number on zotistics
Check links for multiple course departments
Correct queries with ampersands and spaces

Issues
#132
Future Followup (Optional)

Add styling to the link (possibly a button)
Incorporate with Peterportal

Future Followup

Add styling to the link (possibly a button)

Let's actually go ahead and do that in this PR! Maybe we could just copy the styling of the "Prerequisites" link for now?


Utility: Paginator

Add a paginator module via reaction (embed or not embed).
Features:

custom emoji
content per page (easy to use: eg via a function?)
timeout

Optional/Interogation:

allow asking for a page directly on input (defaut page)
page change via different input type (other than emoji)

Goal: paginator used to list items in a message (eg: score etc)
Exported as an independant module (general utility tool)

This sounds similar to chunking, is this what you mean?

I am not sure what you mean.
The idea here is basically a structure that you create and handle displaying messages.
You input an array or object of embeds or text.
The paginator will then display the correct page depending on the default input, additional input.
This needs to be able to be used with reactions or with messages.
This could be similar to tatsu pagination system for example that display data depending on the page you give.
We could expect from this to also have:

a default embed structure, so the only part that change is a small part of the embed (eg: description, fields, description + title) etc
some sort of render function that render the embed with dynamic variable: would behave pretty much like tatsu leaderboard: render only the part we want to render, the object itself dynamically pick the data we want to display.
This could be a second type of paginator.

Quick sum up about what this is supposed to introduce in term of feature:
Paginator:

takes a list of embed or pages
sends back correct page regarding input:

number via awaitMessage / messageCollector
reaction via awaitReaction / reactionCollector
directly via input (command # return the page for #)

As I see it, we will need various structure:

chunker that directly handle the data to output
renderer that display the data needed like we want
navigator that will take user input and call the rendered to correctly render the data

What could possibly be done:

have only one instance of Paginator in the command, that loads and display static (via embed/text). EG: menu, always display the same data

Have potentially a default view (embed or text) that takes dynamically data in param and renders it on user input

directly use a function in the paginator that will return the data that needs to be displayed (eg: DB call)

build dynamically embeds each time and renders it

reactionCollector or messageCollector needs to potentially be given in parameter (to use global one / prevent spawning unecessary new listeners)

Update:
Requirements:

DiscordPaginator = abstract class
2 extensions: DiscordMessagePaginator and DiscordReactionPaginator
You can abstract chunker or whatever else. It just needs at least these 3 classes

Both Paginator works this way:

you give them a collector (reaction or message: waiting for the new Collector implementation can be good)
you give them a list of page to render as discord embeds
you need to be able to have one instance of the paginator per list of pages (aka not having to recreate at every command run) that you call several time to send the pages (I think? but not sure about this one)
you need to be able to call the paginator with just the page number for both react and message and it shows the called page. Then it acts as a regular paginator.

There should be a different way to call the paginator (maybe, it can be when you create a generic Paginator and not a MessagePaginator / ReactionPaginator). The only thing I want is that when you call this Paginator with a different method (name TBD), you get the correct page rendered but it doesn't await anything, doesn't put reaction or anything. It just returns the page.
I'd also like a third argument in paginator constructor which is "how the paginator send message" = basically a function that takes a whole embed object (and send it to discord).
There should be a default to that, but the option should be there in case you want to customise it.


GUACAMOLE-1859: Update to latest compatible Java and JavaScript dependencies.

This change updates to the latest compatible versions of both Java and JavaScript dependencies. For JavaScript, this includes an update to WebPack 4.47.0, which required an update to newer Node.js and NPM, which required creation of a utility script to run the same version of NPM as the guac build and minor changes to dependency-list-plugin.js that ensure the .../dist/ directory is automatically created.
There is a new version of the CAS library available, but it's not usable in our current build as it requires Java 17+. Updating to that would mean the CAS extension requires at least Java 17. That might be OK, but the extension subsystem would need some means of performing JVM version sanity checks prior to fully loading the extension. I'll take a look at doing that separately.
Licenses/notices of dependencies have been updated where necessary.

NOTE: There are merge conflicts against master if/when these changes are merged back. The conflicts are against package.json and package-lock.json because of the additional fuzzysort dependency on master.
The conflicts look mercifully minor. Combining the fuzzysort lines with what's already present from these updates resolves the conflict and looks to build without issue.


create telescope extension

would it be possible to create a telescope extension with this?

Yes for sure! Would have to test performance of that though.

Is there any ETA for this? This seems to have been here for a year almost.


Customize style of Swagger apps

Use BioSimulators/BioSimulations colors and fonts.
Could potentially switch to a material-like base theme
http://ostranme.github.io/swagger-ui-themes/

[x] API
[x] Accounts API
[ ] Simulators API
[ ] COMBINE API

Done for api
Stylesheet is located here: https://github.com/biosimulations/static/blob/dev/stylesheets/biosimulations_swagger.css
This deploys to https://static.biosimulations.org/stylesheets/biosimulations_swagger.css
That is loaded in as the customCssUrl field in setting up the swagger doc

Nice!

:tada: This issue has been resolved in version 5.6.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Unable to run SWI Prolog code in a Logtalk object

I have been wanting to query ChatGPT from Logtalk for some time, and finally got around to looking into it.  But I am running into problems.  This is almost certainly a user error on my part, but I've done everything that I can think of to try to figure out what is going on.
I asked on the SWI forums and was directed to some code Jan Wielemaker posted on the SWI Prolog forums that did exactly what I wanted, and I've attached it below for reference.
I made some basic changes to try to get it to run under Logtalk, and am frustrated. At first I figured that the JSON was not properly formatted, but I see that it is essentially the same as the JSON produced under SWI Prolog (dictionary members are in a slightly different order).  I went down this rabbit hole since a GITHUB project which did something similar worked fine for some models failed on other.  (I concluded that this was probably due to the JSON format).
When I run a query, I just get back "false".    A trace isn't helping me because failures occur too deep into the call to provide any meaning (to me).
Here is the syntax for the SWI Prolog query:
query_gpt(_{query: "Which member of the Golden Girls cast was the hottest?"}, Reply).
Here is the syntax for the Logtalk query:
gpt_utils::query_gpt(_{query: "Are llamas good to eat?"}, Reply).
Files renamed because Prolog/Logtalk code not supported upload types...
SWIPL code:
demo.pl.txt
Logtalk Code
gpt.lgt.txt
loader.lgt.txt

I cannot reproduce the problem as I don't have an OpenAI key. That said, my advice is to avoid using SWI-Prolog proprietary dicts as there are problems with their implementation when used in Logtalk code. Something like:
:- object(gpt_utils).

	:- use_module(http_client, [http_get/3, http_post/4]).
	:- uses(json, [generate/2])
	:- uses(reader, [line_to_codes/2]).

	:- public(query_gpt/3).

	get_key(Key) :-
		setup_call_cleanup(
			open(key, read, In),
			line_to_codes(In, Key),
			close(In)
		).

	query_gpt(Query, Reply, Status) :-
		get_key(Key),
		Url = 'https://api.openai.com/v1/chat/completions',
		generate(
			codes(Data),
			{	model - 'gpt-3.5-turbo',
				temperature - 0.7,
				messages - {
					role - user,
					content - Query
				}
			}
		),
		http_post(
			Url,
			codes(Data),
			Reply,
			[
				authorization(bearer(Key)),
				status_code(Status),
				to(atom)
			]
		).

:- end_object.

You'll also need to modify the loader.lgt file to include:
	logtalk_load(json(loader)),
	logtalk_load(reader(loader)),

Thanks, I'll give it a shot.  And if necessary will somehow arrange to get you an API key.

Hmm..
?- gpt_utils::query_gpt(_{query: "Tell me a story"}, Reply, Status).
!     Domain error: value codes(A) is not in domain json_sink
!       in goal: generate(codes(A),{model-'gpt-3.5-turbo',temperature-0.7,messages-{role-user,content-B{query:"Tell me a story"}}})
!       with execution context:
!         entity:            json(curly,dash,atom)
!         sender:            gpt_utils
!         this:              json(curly,dash,atom)
!         self:              json
!         meta-call context: []
!         coinduction stack: []
I interpret that as not liking the Data.

You need to pass the query as an atom as dicta are no longer used.

Try gpt_utils::query_gpt({query - 'Tell me a story'}, Reply, Status).

That made a big improvement, thanks.  I am talking to their server now.
The key needs to be a string, not codes.  And I think that holds true for the JSON.  I changed get_key back to
open(key, read, In),
read_line_to_string(In, Key),
close(In)
and I can now authenticate.  But the data is not being recognized.  For example it says
Reply = '{\n    "error": {\n        "message": "you must provide a model parameter",\n        "type": "invalid_request_error",\n        "param": null,\n        "code": null\n    }\n}\n',
Status = 400.

Neither atom nor string seemed to make it happy.  Now the post is just failing.  At least codes allowed it to succeed far enough to generate an HTML response.

See the documentation of the Logtalk json library: https://logtalk.org/manuals/libraries/json.html

The problem is that I have no idea of what this thing wants.  The SWI documentation indicates a number of things one can post, but that doesn't mean the GPT server will accept them.
I tried a parsed JSON term, atom, chars, codes.  The codes and atom both were accepted by the server, but the error was that I didn't provide a model parameter.  That is in the data, so there must be a coding issue.
I tried form and form_data, but they are not in domain json_sink.
I need to get busy grading exams, so I think playtime is over for now.  Thanks for looking at this.

Fixed an error above for the messages key: its value must be a list.

GPT isn't even seeing the model parameter (which is a peer to messages).  I applied the fix to messages, but it doesn't change the behavior
Reply = '{\n    "error": {\n        "message": "you must provide a model parameter",\n        "type": "invalid_request_error",\n        "param": null,\n        "code": null\n    }\n}\n',
Status = 400.

Using the key you sent me and the following code works.
loader.lgt file:
:- initialization((
	use_module(library(http/http_open)),
	use_module(library(http/http_client)),
	use_module(library(http/json)),
	use_module(library(ssl)),
	logtalk_load(json(loader)),
	logtalk_load(reader(loader)),
	logtalk_load(gpt)
)).

gpt.lgt file:
:- object(gpt).

	:- use_module(http_client, [http_get/3, http_post/4]).
	:- uses(json, [generate/2]).
	:- uses(reader, [line_to_codes/2]).

	:- public(query/3).

	get_key(Key) :-
		setup_call_cleanup(
			open(key, read, In),
			(line_to_codes(In, KeyCodes), atom_codes(Key, KeyCodes)),
			close(In)
		).

	query(Query, Reply, Status) :-
		get_key(Key),
		Url = 'https://api.openai.com/v1/chat/completions',
		generate(
			codes(Data),
			{	messages - [{role - user, content - Query}],
				model - 'gpt-3.5-turbo',
				temperature - 0.7
			}
		),
		http_post(
			Url,
			codes('application/json', Data),
			Reply0,
			[
				authorization(bearer(Key)),
				status_code(Status),
				to(codes)
			]
		),
		parse(codes(Reply0), Reply).

:- end_object.

For example:
$ swilgt -q
?- {loader}.
true.

?- gpt::query('Are llamas good to eat?', Reply, Status), writeq(Reply).
{id-'chatcmpl-7hYmQnYqA2JVho2AQHsowRuzKwYmy',object-'chat.completion',created-1690616154,model-'gpt-3.5-turbo-0613',choices-[{index-0,message-{role-assistant,content-'Yes, llamas can be eaten, and their meat is consumed in some parts of the world, particularly in South America. Llama meat is considered lean and nutritious, similar to other red meats like beef or lamb. However, it is important to note that llamas are more commonly valued for their wool, pack-carrying ability, and as companion animals rather than for their meat.'},finish_reason-stop}],usage-{prompt_tokens-14,completion_tokens-78,total_tokens-92}}
Reply = {id-'chatcmpl-7hYmQnYqA2JVho2AQHsowRuzKwYmy', object-'chat.completion', created-1690616154, model-'gpt-3.5-turbo-0613', choices-[{..., ...}], usage-{... - ..., ..., ...}},
Status = 200.

Thanks a lot.  I'm going to need to study this a lot to see what the differences are.  This was very frustrating for me, and I'm disappointed that I couldn't figure it out on my own.  But words cannot express how grateful I am for your assistance with this.
I am curious what your thought process was debugging this was.  How did you figure it out?  There is precious little useful feedback when things go wrong.  I would very much like to learn as much as possible from this  experience.

In your original porting attempt, I think the query was failing in the Reply = Reply0.put(status, Status) goal due to the compatibility issue I mentioned with dicts.
In the working solution above, I initially missed the required 'application/json' request header. The hint was the error reply from the OpenAI services as consulting their API documentation showed the constructed JSON request to be correct.


feat: allow merging StyleImport configs

Description
Added optional merge property to StyleImport that allows merging an import config with the existing style import config, instead of full override.
Defaults to false when not defined, to stay in line with current behaviour of StyleImport.
I haven't tested this on the example app and/or added an example, since I'm on some strict deadlines. Would love to get some help getting this PR over the finish line.
Checklist

[x] I've read CONTRIBUTING.md
[x] I updated the doc/other generated code with running yarn generate in the root folder
[ ] I have tested the new feature on /example app.

[ ] In V11 mode/ios
[ ] In New Architecture mode/ios
[ ] In V11 mode/android
[ ] In New Architecture mode/android

[ ] I added/updated a sample - if a new feature was implemented (/example)

Screenshot OR Video
Tested this both on iOS & Android, but for simplicity I only added iOS demo video's here.
Test explained: the map style has both POI not showing & light mode dusk.
merge unset
Expected: full override, so 'POI showing' falls back to default (true).
https://github.com/user-attachments/assets/17df30e9-a2e8-4798-8db2-f25b4ec445a1
merge: false
Expected: full override, so 'POI showing' falls back to default (true).
https://github.com/user-attachments/assets/64c7ed1b-3e76-4b21-ab5c-ef048708b423
merge: true
Expected: merging style, so 'POI showing' stays as defined in the style (false).
https://github.com/user-attachments/assets/6684a273-17cf-4384-b72b-6c9a32ac6f21
Component to test with
import Mapbox, {StyleImport} from '@rnmapbox/maps';
import React from 'react';

const DemoMap = () => {
  return (
    <Mapbox.MapView
      style={{flex: 1}}
      styleURL="mapbox://styles/beerd/cm0xlddce00zx01pm5zyb9om9">
      <Mapbox.Camera
        defaultSettings={{
          centerCoordinate: [4.9041, 52.3676],
          zoomLevel: 13,
        }}
        centerCoordinate={[4.9041, 52.3676]}
      />
      <StyleImport
        id="basemap"
        existing
        config={{
          lightPreset: 'night',
        }}
        merge={true}
      />
    </Mapbox.MapView>
  );
};

export default DemoMap;

@bvanderdrift thanks much looks amazing. 👍


TextField component change size, by adding value inherit to box-sizing property when Text Primary or Background Default color are changed in theme

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
When you change the color to Text Primary o Background Default properties in theme, the TextField component gets te box-sizing: inherit css property and change inner size of input, where goes the value.
Here a codesandbox that can replicate the bug.
Expected behavior 🤔
Been able to change color to Text Primary or Background Default properties in theme without affecting TextField size component.
Steps to reproduce 🕹
Steps:
In the codesandbox, the first button just create a theme, based on a toggle, with two diffent Primary Main color, so you'll see no change in size on the TextField component.
The second button does the same but with Background Default  and Paper color. When you use the theme with the Background Color changed, the input change size, but when you press again, it only change Background Paper color, and the input size it's not changed.
The same work for the third button, but when you press it, it create a theme with Text Primary color changed, and the input change size, but when you press it again, it only change Text Secondary, and the input size it's not changed.
Context 🔦
We are creating this Desing System, and the issue affect the way the user interact with this tool, because when they change a color, it should only change the color, not adding other css properties to other components.
Your environment 🌎

npx @mui/envinfo
  Google Chrome Version 104.0.5112.79 (Official Build) (arm64)
  System:
    OS: macOS 12.5
  Binaries:
    Node: 16.15.0 - ~/.nvm/versions/node/v16.15.0/bin/node
    Yarn: Not Found
    npm: 8.5.5 - ~/.nvm/versions/node/v16.15.0/bin/npm
  Browsers:
    Chrome: 104.0.5112.79
    Edge: Not Found
    Firefox: Not Found
    Safari: 15.6
  npmPackages:
    @emotion/react: ^11.9.0 => 11.9.0
    @emotion/styled: ^11.8.1 => 11.8.1
    @mui/base:  5.0.0-alpha.83
    @mui/icons-material: ^5.6.2 => 5.8.2
    @mui/material: ^5.6.1 => 5.8.2
    @mui/private-theming:  5.8.0
    @mui/styled-engine:  5.8.0
    @mui/system:  5.8.2
    @mui/types:  7.1.3
    @mui/utils:  5.8.0
    @types/react: 18.0.1 => 18.0.1
    react: 18.0.0 => 18.0.0
    react-dom: 18.0.0 => 18.0.0
    typescript: 4.6.3 => 4.6.3

Thanks for the report, I was able to reproduce it. I found that this issue is caused by ScopedCssBaseline's CSS that is applied near the bottom of all styles. Since .css-1t8l2tu-MuiInputBase-input-MuiOutlinedInput-input (that contains box-sizing: content-box;) and .css-1mq96nu-MuiScopedCssBaseline-root * have the same specificity, the one declared at the bottom wins.
@siriwatknp, @mnajdova, we could use :where(.MuiScopedCssBaseline-root) * (not the real class name, but you get the idea), to lower the specificity of ScopedCssBaseline's styles to 0,0,0. This, however, is not supported in IE.


compact: unexpected termination

Hello, I've a problem with Thanos Compact
Thanos, Prometheus and Golang version used:
thanos, version 0.12.2 (branch: HEAD, revision: 52e10c6e0f644ea98fd057e7fbece828d8dd07c7)
  build user:       root@c1a6cf60f03d
  build date:       20200430-16:24:03
  go version:       go1.13.6

Object Storage Provider: S3 (ceph)
What happened: Thanos Compact is running as a pod in our k8s cluster and after some time has been unexpectedly terminated and I don't know why. Pod is terminated, but not as Failed. Probably some block of data is corrupted, but I can't see which one. Due to the fact that the whole process is not complete, the storage on S3 is gradually being filled.
What you expected to happen: I have debug logging turned on and I would like a know, where is the problem.
How to reproduce it (as minimally and precisely as possible):
I don't know, how to reproduce it. But I have similar solution in another k8s cluster and there is everything OK.
 Exiting." signal=terminated
level=warn ts=2020-05-24T12:24:34.091079439Z caller=intrumentation.go:54 msg="changing probe status" status=not-ready reason=null
level=info ts=2020-05-24T12:24:34.091359294Z caller=http.go:81 service=http/server component=compact msg="internal server shutdown" err=null
level=info ts=2020-05-24T12:24:34.091389922Z caller=intrumentation.go:66 msg="changing probe status" status=not-healthy reason=null

Anything else we need to know:
Environment:

OS: Debian 9
Kernel: Linux thanos-compact-0 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u3 (2019-06-16) x86_64 GNU/Linux

Additional informations:
    spec:
      containers:
      - args:
        - compact
        - --log.level=debug
        - --data-dir=/var/thanos/store
        - --objstore.config-file=/opt/s3.yaml
        - --retention.resolution-raw=15d
        - --retention.resolution-5m=30d
        - --retention.resolution-1h=90d
        - --consistency-delay=1h
        - --wait

Thank you! :)

What health checks do you have configured on the container? Are there any logs before what you have pasted?

I have configured these health checks:
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/healthy
            port: http
            scheme: HTTP
          initialDelaySeconds: 3
          periodSeconds: 3
          successThreshold: 1
          timeoutSeconds: 1

        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/ready
            port: http
            scheme: HTTP
          initialDelaySeconds: 3
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1

I'm using statefulset definition, but I created deployment with the same configuration and I have got answers:
Status:               Failed
Reason:               Evicted
Message:              Pod The node had condition: [DiskPressure].

The problem was on my side. Maybe the blocks are too large. 🤔
Is there a method to define size of the temporary stored data?
I have a server that has about 750GB of free space.

I have configured these health checks:
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/healthy
            port: http
            scheme: HTTP
          initialDelaySeconds: 3
          periodSeconds: 3
          successThreshold: 1
          timeoutSeconds: 1

        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /-/ready
            port: http
            scheme: HTTP
          initialDelaySeconds: 3
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1

I'm using statefulset definition, but I created deployment with the same configuration and I have got answers:
Status:               Failed
Reason:               Evicted
Message:              Pod The node had condition: [DiskPressure].

The problem was on my side. Maybe the blocks are too large. thinking
Is there a method to define size of the temporary stored data?
I have a server that has about 750GB of free space.

Exactly - no since that depends on the nature of the data. There's this, though: https://github.com/thanos-io/thanos/pull/1550. I really need to finish it one day. Let's close this in favor of that?

Yes, we can close this in favor of that.


[$250] [Search v2.3] - Default name in name field displays user/report ID instead of user/report name

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.40-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Issue reported by:  Applause - Internal Team
Action Performed:

Go to staging.new.expensify.com
Go to Search
Click Filters
Click To
Select a user and save it
Click Save search
Click 3-dot menu next to the saved search
Click Rename

Expected Result:
The default name in search name field will display user name instead of user ID
Actual Result:
The default name in search name field displays user ID instead of user name
The same goes for report ID when In filter is used for chat
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/user-attachments/assets/46155072-abba-4447-97c0-5a1d14b90a23
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~021839048305434680628
Upwork Job ID:<PHONE_NUMBER>434680628
Last Price Increase: 2024-09-25
Automatic offers:

rayane-djouah | Reviewer | 104132486
Nodebrute | Contributor | 104132487

Issue OwnerCurrent Issue Owner: @rayane-djouah

We think that this bug might be related to #wave-control

Tested 🟢

This is no longer a blocker since it was already fixed on the previous checklist

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[ ] [@rayane-djouah] The PR that introduced the bug has been identified. Link to the PR:
[ ] [@rayane-djouah] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[ ] [@rayane-djouah] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[ ] [@rayane-djouah] Determine if we should create a regression test for this bug.
[ ] [@rayane-djouah] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
[ ] [@kadiealexander] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

Payouts due:

[ ] Contributor: $250 @Nodebrute
[ ] Contributor+: $250 @rayane-djouah

Upwork job is here.

We'll add tests as part of the project wrap uo


Write documentation for play evolutions

Description
We should ensure we have documentations about play evolutions. This can link to the play docs as well https://www.playframework.com/documentation/2.8.x/Evolutions#Managing-database-evolutions
This should also include updating the developer standards to ensure structural changes to the database are introduced in a backwards compatible way

related: https://github.com/civiform/civiform/issues/2236


Deprecation warning not shown / have_enqueued_jobs name clash

I am using rspec-rails 3.4.2 and was wondering why I get the following error, while trying to test job creation in a after_create callback.
ArgumentError:
       have_enqueued_jobs only supports block expectations

rspec-rails defines a have_enqueued_job matcher, which seems to introduce problems with rspec-sidekiq. I suppose this check does not work:
https://github.com/philostler/rspec-sidekiq/blob/3ef52ce9ae7b3b5214a9b479318ad3c244ab7c65/lib/rspec/sidekiq/matchers/have_enqueued_job.rb#L7-L10
Also I suggest only guarding the deprecation warning with the if clause. The alias should be defined in any case, no?

I'm guessing that the check is fine, but that the issue is with having both libraries try to define have_enqueued_job. It seems like the best way to deal with this would be having rspec-sidekiq define have_enqueued_sidekiq_job and only alias in the case that rspec-rails < 3.4.
The issue with doing it that way is that someone can have a bunch of tests that work, and then upgrade rspec-rails and suddenly everything is broken. @wpolicarpo || @philostler thoughts?

@packrat386 @leoc I think #105 addresses the issue the right way. I'd say that the only problem (not a real problem, though) is that have_enqueued_job should be delegating to have_enqueued_sidekiq_job instead of instantiating HaveEnqueuedJob itself.


Using a Generic font name gives error when answering

Describe your problem and how to reproduce it:
This was discussed on the forum and it was suggested I submit it to GitHub.
The instructions of this challenge introduce the use of a “generic name” (optional) so I used “monospace” in the generic name.
font-family: FAMILY_NAME, GENERIC_NAME; .
I would then get the error:
" You should only use an h2 selector to change your font", which I was doing.
It turns out any use of a generic name won't be accepted.
Please update question to say "don't use generic for now" or update possible answer to allow for a generic insert.
Add a Link to the page with the problem:
https://forum.freecodecamp.org/t/generic-name-gives-error/425828
Tell us about your browser and operating system:

Browser Name: Chrome
Browser Version:..
Operating System: Win 10

If possible, add a screenshot here (you can drag and drop, png, jpg, gif, etc. in this box):
See link above for insight.

testString: assert(/\s*[^\.]h2\s*\{\s*font-family\:\s*(['"]?)Lobster\1\s*(;\s*\}|\})/gi.test(code));
This is the test in question. I would support modifying the test to allow for a fallback value as shown in the challenge description.
Before opening this up for contribution, though, I'd like some additional feedback to see if there is support for this change.

Thank you, for taking the time to bring this up.
Importantly, the instructions do not mention anything about the generic font. In fact, they are quite clear about what is expected.
In my opinion, there is no issue here. Also, I do not see this confusion popping up on the forum.
Perhaps the point of discussion should be: Is it best-practice to use the generic/fall-back? If so, then we should consider rewriting the instructions, along with the tests.
Something to keep in mind: The lesson is about importing a font...not setting the font-family (the next lesson covers this)

I do agree that I haven't seen much confusion for this lesson popping up on the forum. The lesson does ask the camper to set the font-family of the h2 element to Lobster - but the next lesson covers the "font degradation" fall-back value.
Maybe it would be best to take this note (and the one below it) and move it to the next lesson?

Maybe it would be best to take this note (and the one below it) and move it to the next lesson?

@nhcarrigan Yes, I was thinking the same. It is just, this is the type of information I would expect when first encountering a new property.

I'm not sure I would move it to the next lesson - there's already an example there. I would be in favor of change the last three paragraphs of the instructions from this:


feature: HTTP executor can POST multipart

I need this feature, but I find my method too "hacky" because of encode/decode and behaviors of the used encoding libraries.
First issue I came up with, in templater:
templater> Error while marshaling: json: unsupported type: map[interface {}]interface {}
templater> Error while marshaling: json: unsupported type: map[interface {}]interface {}
templater> Error while marshaling: json: unsupported type: map[interface {}]interface {}

It appears json does not really like map[interface{}]interface{} type (and does not know what to do with it), while yaml (it's the one producing this type) is okay with it (hence the modification in templater.go)
Second issue I came up with, in the executor
Basically, mapstructure.Decode does not know how to handle the MultipartForm field. I had to set values manually (and assert types later)
If you have any ideas on how to make all this less "hacky", please don't hesitate, you probably use more Golang than I do.
Also, I am not sure how you're making sure any change is not breaking the software, so I did not look into testing.

\i/ Seems good, two points:

can you add an example in readme ? (or add a new Readme file like https://github.com/runabove/venom/pull/11/files#diff-79519ffc6c2ccac4e7862584694ee6e0 , but for exec executor) ?
can you one-line all err when it's possible ?

cc @fsamin @sguiheux

I considered all your remarks @fsamin

nice ! thank you very much


Deserializing Error

Hi,
I am trying to use the newest addition to the dlib face detection module : the 5 point pose landmark detector. However on trying to run the compiled program I am running into the below mentioned error.
An error occurred while trying to read the first object from the file pathtofile/shape_predictor_5_face_landmarks.dat. ERROR: Error deserializing object of type unsigned long    while deserializing object of type std::string.
Tried doing a quick google lookup but did not manage to get any satisfactory results. Thanks in advance.

Post the exact steps to reproduce the error.

Hey Davis,
I am trying to run "dnn_mmod_face_detection_ex.cpp" with modifications. However in retrospect I realise that the convnet used for the 5 pose landmark estimation would be very different from that used for 68 landmarks. However I couldn't find the architecture for the same. Nonetheless below is the code. Do let me know your thoughts on where exactly am I going wrong ? Thanks.
`#include
#include <dlib/dnn.h>
#include <dlib/data_io.h>
#include <dlib/image_processing.h>
#include <dlib/gui_widgets.h>
using namespace std;
using namespace dlib;
// ----------------------------------------------------------------------------------------
template <long num_filters, typename SUBNET> using con5d = con<num_filters,5,5,2,2,SUBNET>;
template <long num_filters, typename SUBNET> using con5  = con<num_filters,5,5,1,1,SUBNET>;
template  using downsampler  = relu<affine<con5d<32, relu<affine<con5d<32, relu<affine<con5d<16,SUBNET>>>>>>>>>;
template  using rcon5  = relu<affine<con5<45,SUBNET>>>;
using net_type = loss_mmod<con<1,9,9,1,1,rcon5<rcon5<rcon5<downsampler<input_rgb_image_pyramid<pyramid_down<6>>>>>>>>;
// ----------------------------------------------------------------------------------------
int main(int argc, char** argv) try
{
if (argc == 1)
{
cout << "Call this program like this:" << endl;
cout << "./dnn_mmod_face_detection_ex mmod_human_face_detector.dat faces/*.jpg" << endl;
cout << "\nYou can get the mmod_human_face_detector.dat file from:\n";
cout << "http://dlib.net/files/mmod_human_face_detector.dat.bz2" << endl;
return 0;
}
net_type net;
deserialize(argv[1]) >> net;

image_window win;
for (int i = 2; i < argc; ++i)
{
    matrix<rgb_pixel> img;
    load_image(img, argv[i]);

    // Upsampling the image will allow us to detect smaller faces but will cause the
    // program to use more RAM and run longer.
    while(img.size() < 900*900)
        pyramid_up(img);

    // Note that you can process a bunch of images in a std::vector at once and it runs
    // much faster, since this will form mini-batches of images and therefore get
    // better parallelism out of your GPU hardware.  However, all the images must be
    // the same size.  To avoid this requirement on images being the same size we
    // process them individually in this example.
    auto dets = net(img);
    win.clear_overlay();
    win.set_image(img);
    for (auto&& d : dets)
        win.add_overlay(d);

    cout << "Hit enter to process the next image." << endl;
    cin.get();
}

}
catch(std::exception& e)
{
cout << e.what() << endl;
}`

Hey Davis, apologies for bothering you. I got it to work. Had made a silly error. Thanks.


Replay mod crashes minecraft

Mod Name
replaymod-1.20.1-2.6.14.jar
Mod Homepage
https://modrinth.com/mod/replaymod/version/1.20.1-2.6.14
Minecraft version
1.20.1
Describe the bug
It crashes the game
Steps to reproduce
1.I started Minecraft.
2.I waited for the loading screen to finish.
3.The game crashed.
...
Logs
https://pastebin.com/MaFhsTep
Additional context
No response

Duplicate of #589


cgcloud register-key fails with us-east-1 and us-east-1a

In the docs for cloud installation, the docs say to run:
cgcloud register-key ~/.ssh/id_rsa.pub

When I do this, I get the error:
INFO: Using zone 'us-east-1a' and namespace '/ryan.golhar/'
Traceback (most recent call last):
  File "/home/golharr/workspace/BD2KGenomics/venv/bin/cgcloud", line 11, in <module>
    sys.exit(main())
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/core/cli.py", line 49, in main
    app.run( args )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/lib/util.py", line 308, in run
    command.run( options )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/core/commands.py", line 85, in run
    return self.run_in_ctx( options, ctx )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/core/commands.py", line 637, in run_in_ctx
    force=options.force )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/lib/context.py", line 522, in register_ssh_pubkey
    self.upload_ssh_pubkey( ssh_pubkey, fingerprint )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/cgcloud/lib/context.py", line 479, in upload_ssh_pubkey
    location=self.region )
  File "/home/golharr/workspace/BD2KGenomics/venv/lib/python2.7/site-packages/boto/s3/connection.py", line 621, in create_bucket
    response.status, response.reason, body)
boto.exception.S3ResponseError: S3ResponseError: 400 Bad Request
<?xml version="1.0" encoding="UTF-8"?>
<Error>InvalidLocationConstraint<Message>The specified location-constraint is not valid</Message><LocationConstraint>us-east-1</LocationConstraint><RequestId>544509A0A5640F85</RequestId><HostId>F6lVWhi7+Yy4fKuJej9xQEO8Q/q5eisgMawRebE8C1q52ckyll2AThzm7aMv3UA+DtN7Sn/+BjU=</HostId></Error>

My  CGCLOUD_ZONE=us-east-1a, so I'm not sure what to do.   AWS docs says I should use us-east-1, but when I set that to CGCLOUD_ZONE, Toil can't determine the region.

This should be filed against CGCloud, not Toil. Anyhow, this is a duplicate o of https://github.com/BD2KGenomics/cgcloud/issues/215 which has been fixed but the fix has not been released yet. On that ticket, there is mention of a work around that could tie you over until the next release is cut. The workaround is to temporarily change CGCLOUD_ZONE to any other region, like us-west-2a, run cgcloud register-key, then change CGCLOUD_ZONE back and run cgcloud register-key again.


Incorporate test_examples.sh into JUnit suite

Only thing left now is moving the copying of .ext -> .ext-expected files to an SBT task

Migrating the last part to a sbt task is low priority


Pods are not displayed via the pods tab

Describe the bug
Log in to headlamp, go to the dex namespace in which I gave the user full access.

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: developer-role
  namespace: dex
rules:
  - verbs:
      - '*'
    apiGroups:
      - '*'
    resources:
      - '*'
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: developer
rules:
  - apiGroups: [""]
    resources: ["namespaces"]
    verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: developer-role-binding
  namespace: dex
subjects:
  - kind: Group
    name: dex:infrastructure
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: developer-role
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: dex-developer
subjects:
  - kind: Group
    apiGroup: rbac.authorization.k8s.io
    name: dex:infrastructure
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: developer

And I can get all the info if I navigate through the namespace tab through the resources.

But if I go to the pod\secret\etc tab, they will not be available.
If I go to the same in Lens with the same account, everything works as expected

I understand that the problem is most likely that headlamp first tries to get all the pods in the cluster (I did not give such permissions) and filter them on the frontend.
https://blabla.dev/c/main/pods?namespace=dex
And if you open the pod directly, then everything is ok
https://blabla.dev/c/main/pods/dex/dex-66c5fdc5b7-ng2bg
if I give get list permissions to pods in clusterRole, everything will work, but i don't want to give permissions to pods in whole cluster
Environment:

Installation type: Helm
Headlamp Version: 1.27.5

Are you able to fix this issue?
No

hi, thanks for opening an issue
how to fix this:
there's an "Allowed namespaces" setting that you can set which will restrict all the requests to those particular namespaces

I understand that the problem is most likely that headlamp first tries to get all the pods in the cluster (I did not give such permissions) and filter them on the frontend.

you're right, currently by default headlamp fetches all the pods and then filters by namespace. there's a related issue with a similar problem here https://github.com/headlamp-k8s/headlamp/issues/1195

how to fix this:
there's an "Allowed namespaces" setting that you can set which will restrict all the requests to those particular namespaces
I don’t think this is a good way when we have a lot of namespaces, it’s still worth reconsidering this logic

@fatsolko You are right. We need to find a better way to handle this.
Maybe if the currently selected Namespace is just one (and not many), we include it in the requests?
cc/ @sniok


Added a changelog file using Sphinx and the releases plugin.

 Fixes issue #36.

Coverage remained the same at 98.67% when pulling 026f95e460b220e15222622b7924718538ddf596 on bravegnu:changelog into c0f722cf50069f0b37212580cf477fa72e8082e0 on Chennaipy:master.


Var array lookup

Would be nice if we could do this:
test$find[0]: hello

Right now we need to do this
$first: $find[0]
test$first: hello

This works:
=find[0]: hello


Contextual Dialog bug fix

What
Removed ubiquitousStore if statements from PushNotificationDialog.
Why
The value we use to check if we should show the Contextual Dialog (true by default and false if the user select Not now 3x on the alert dialog) is being saved on iCloud (ubiquitousStore) and restored if the app is reinstalled. The problem with that is the fact the Push Notifications settings reset on the iOS level, and because we are not showing the dialog anymore, the user is not able to re-register for push notifications.

@ifbarrera Just needed to remove ubiquitousStore from the environment initialisation (for cleanup). The code adds the values to both UserDefaults and UbiquitousStore (as a backup, case the user deletes the app) but uses only one of them to apply the necessary logic. Therefore, by deleting ubiquitousStore, the result of the tests didn't change.

 Contextual Dialog not showing up after app reinstallation.


chore: upgrade go version

What type of PR is this?
/kind upgrade

What this PR does / why we need it:
Upgrade go version.
Which issue(s) this PR fixes:

Fixes #
Requirements:

[x] uses conventional commit messages

[ ] includes documentation
[ ] adds unit tests
[ ] tested upgrade from previous version

Special notes for your reviewer:
Release note:
none

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.051%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2415

Relevant Lines:
3055

💛  - Coveralls


Issue 128 - Support for Nested Contexts

Added INestedVariablesContext / NestedVariablesContext to ILog.
Working implementations for log4net and NLog.

Merged; thanks for the (revised) PR and all your efforts on this!

Thanks for accepting the functionality!
On a not-entirely-unrelated note, do you have an estimated date when the next version will be released to nuget?

I'll package this up as a BETA-1 (pre-release) for NuGet later this morning.
The final 3.4-GA  is now only waiting on our solidifying a coherent story around the configuration experience in our DNX/.NET Core support.  Once that's done, we will probably do a BETA-2 with the .NET Core config story in it so that we can get some feedback on the approach we select.  If there are any issues raised in BETA-2, then we'll address them and then do an RC release.  If there aren't any issues raised in BETA-2, we might just go straight to 3.4-GA from the BETA-2.
All told, my hope is that we can have a 3.4-GA release ready by EOM (October) with some luck on our side.

Great, looking forward to it!

Hi Steve,
Any updates on when you think 3.4 can be released?  It seems to have gone very quiet since October.
Regards


ozp-iwc example

Could you provide an example of how this widget could be used in an iwc environment. I have tried to create a widget but If I specify a container, and specify environment:'iwc'. The iwc connection is not made.
An example of a map controlled through iwc would be helpful.
Thanks!

Currently there is no support for Ozone ozp-iwc. I need to investigate if there is a requirement to support this capability. Thanks,.

We have no requirement for Ozone at this time.


Vector cube usage in aggregate_spatial, filter_spatial, mask_polygon, ...

Processes aggregate_spatial, filter_spatial, mask_polygon have a geometries (or mask) parameter that currently is of type geojson:object. Likewise, load_collection and load_result have a spatial_extent parameter that can be geojson:object (among other options).
Once we improve support for loading/processing vector cubes (e.g. #322)  these processes should also allow vector-cube as data type for these parameters,
so that a user can  pass the geometries with a file/url instead of embedding geojson in the process graph

Yes, that's on the todo list for sure.

Should we have then a load_vector_cube process to load a vector data from an URL?

Allowing aggregate_spatial to get vector-cube as input is necessary to proceed with the random_forest pipeline. In the meanwhile I will modify the process locally for some tests.

Closely related: #343 and #346
I'm not sure I'd add vector-cube as input for load_result and load_collection. These are compromises of simplicity and utility.
You may then just add it to filter_spatial as a dedicated process that can be used to filter based on vector cubes.


create alias functionality added

Hi there!
I've added Mixpanel's Create Alias functionality to this project. This feature allows to create an  alias for a distinct Mixpanel user ID, which can be useful for tracking the same user across different devices or after they've changed their identifying details.
I've tested this locally, and it's working as expected. Please let me know if there are any changes you'd like me to make or if you have any questions about the implementation.
Thanks for considering my contribution!

@Vitaly-A-Ivanov thank you for contributing :+1:


SetHoldings for Multiple Targets and Liquidating Existing Holdings Close Some Positions

Expected Behavior
SetHoldings for multiple targets should open one position for each target.
Actual Behavior
If the SetHoldings has two targets, it creates 3 orders: the first order opens a position for A, the second order closes the position for A, and the third order opens a position for B. This is because SetHoldings for one target closes all positions before it opens its positions.
Potential Solution
Liquidate existing all positions before starting to open new ones.
Reproducing the Problem
public override void OnData(Slice data)
{
    if (!Portfolio.Invested)
    {
        SetHoldings(new List<PortfolioTarget> { new("SPY", 0.8m), new("IBM", 0.2m) },
            liquidateExistingHoldings: true);
        }
}

Creates 3 orders instead of two. SPY has zero shares after the call.
Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues
[x] I have provided detailed steps to reproduce the issue

Potential Solution
Liquidate existing all positions before starting to open new ones.

I don't think this is a good solution. I expect liquidateExistingHoldings parameter to be aware of portfolio changes. If I just wanted to liquidate all holdings, I could add self.Liquidate() before the self.SetHoldings() call.
With this fix it will liquidate SPY completely and then buy it again, which will cause significant and unnecessary losses.
I expect from this parameter to
a) liquidate holdings that are not mentioned in Portfolio Targets;
b) rebalance holdings that are mentioned in Portfolio Targets and have positions in Portfolio;
c) open new positions for Portfolio Targets that do not have positions open yet.
Otherwise I really don't see a point in having this parameter.

Actually, from backtesting it looks like this is how it actually works, so nevermind.


Board Review: Azure.Security.Attestation - C#

Thank you for submitting this review request. Thorough review of your client library ensures that your APIs are consistent with the guidelines and the consumers of your client library have a consistently good experience when using Azure.
The Architecture Board reviews Track 2 libraries only. If your library does not meet this requirement, please reach out to Architecture Board before creating the issue.
Please reference our review process guidelines to understand what is being asked for in the issue template.
To ensure consistency, all Tier-1 languages (C#, TypeScript, Java, Python) will generally be reviewed together.  In expansive libraries, we will pair dynamic languages (Python, TypeScript) together, and strongly typed languages (C#, Java) together in separate meetings.
For Tier-2 languages (C, C++, Go, Android, iOS), the review will be on an as-needed basis.
Before submitting, ensure you adjust the title of the issue appropriately.
Note that the required material must be included before a meeting can be scheduled.
Contacts and Timeline

Responsible service team: Microsoft Azure Attestation
Main contacts: Larry Osterman (LarryO), Anil Bazaz
Expected code complete date: 4/15/2021
Expected release date:5/4/2021 (May SDK release)

About the Service

Link to documentation introducing/describing the service: https://docs.microsoft.com/en-us/azure/attestation/
Link to the service REST APIs: https://docs.microsoft.com/en-us/rest/api/attestation/
Link to GitHub issue for previous review sessions, if applicable:

About the client library

Name of the client library: Microsoft Azure Attestation
Languages for this review:C#

Artifacts required (per language)
Please read through “API Review” section here to understand how these artifacts are generated. It is critical that these artifacts are present and are in the right format. If not, the language architects cannot review them with the SDK Team’s API review tool.
.NET

APIView Link: https://apiview.dev/Assemblies/Review/b117b54c7e254957ac125800419bde88/7ccc874dc92547bf935bd1d5b72671ad?doc=False
Link to Champion Scenarios/Quickstart samples: https://github.com/Azure/azure-sdk-for-net/tree/master/sdk/attestation/Azure.Security.Attestation

Java

APIView Link:
Link to Champion Scenarios/Quickstart samples:

Python

APIView Link:
Link to Champion Scenarios/Quickstart samples:

TypeScript

APIView Link:
Link to Champion Scenarios/Quickstart samples:

For all other languages, send a request to the Architecture Board to discuss the best format on individual basis.
Thank you!

scheduled for 4/19 2-4pm pst

I think the API link is: https://apiview.dev/Assemblies/Review/b117b54c7e254957ac125800419bde88

Recording[MS INTERNAL ONLY]


Reserve Red Hat Annex for CivicCamp (Fri/Sat)

Good news, I've got the big room for both Fri/Sat. Bad news is that the other rooms are booked, I'm just sure for what times. I should know more tomorrow.


constrain log length (otherwise elk dies)

cc @ldruschk

@Trolldemorted to what length?

I think the (default) limit on indexable string fields enforced by ES is 32kb, but we could also check whether things have changed with the version upgrades, if 32k chars is not enough

Quick google search showed its stayed at around 32kb, actually 32766 (< 32768).


HDDS-9215. Snapshot Chain corruption because snapshot chain need not be created in increasing order of CreatedTime

What changes were proposed in this pull request?
SnapshotCreateRequest creates snapshotInfo created time in pre-execute phase whose order need not be the same as the ratis log ordering. So 2 consecutive snapshot created in the snapshot info table need not be in increasing order of created time. SnapshotChainManager on om restart tries to load the snapshot in the increasing order of their created time. Thus throws a SnapshotChainCorruption exception in this case as it previous snapshot is not loaded but SnapshotChainManager expects that the previous snapshot be loaded before trying to load the current snapshot.
Thus instead of ordering snapshot on their created time. The changes proposes to create a forward linked list for the snapshot chain based on the previousSnapshotGlobalId from the snapshotInfo and iterates through the linked list in the same order. Also added a few debug logs for the same.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-9215
How was this patch tested?
Fixing existing unit tests. Adding more unit tests.

@hemantk-12 the ci run is succesful. this can be merged


Train and validation WER both remain 1 while training VO model

Hi,
I am trying to train the video-only model, when the 'PRETRAIN_NUM_WORDS' is 1, it seems that the WER of training and testing set are both 1 all the time and there is no any improvement.
`Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 182 || Tr.Loss: 3.239813  Val.Loss: 3.226672 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Epoch   183: reducing learning rate of group 0 to 1.0000e-06.
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 183 || Tr.Loss: 3.241490  Val.Loss: 3.221430 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 184 || Tr.Loss: 3.240253  Val.Loss: 3.238177 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 185 || Tr.Loss: 3.228107  Val.Loss: 3.234346 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 186 || Tr.Loss: 3.234290  Val.Loss: 3.216766 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 187 || Tr.Loss: 3.241915  Val.Loss: 3.232590 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 188 || Tr.Loss: 3.233189  Val.Loss: 3.228462 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 189 || Tr.Loss: 3.236741  Val.Loss: 3.223365 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 190 || Tr.Loss: 3.235876  Val.Loss: 3.216625 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 191 || Tr.Loss: 3.241944  Val.Loss: 3.242806 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 192 || Tr.Loss: 3.237240  Val.Loss: 3.243809 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
Train:   0%|                                       | 0/512 [00:00<?, ?it/s]Step: 193 || Tr.Loss: 3.238747  Val.Loss: 3.219588 || Tr.CER: 1.000  Val.CER: 1.000 || Tr.WER: 1.000  Val.WER: 1.000
`
Is this situation normal?
Thanks for your suggestions.
Originally posted by @yuexianghubit in https://github.com/LordMartian/deep_avsr/issues/4#issuecomment-658174528

I have faced this issue a few times during this project. I had faced it while training the VO model also. Most of the times the solution was very trivial and hard to catch. For this particular case, I had tried many things but hadn't been able to solve it. Eventually, I had initialized the model with weights from the previous version of this project. I think you can try changing the seed value a few times (that also helped me once!!) or the using some weight initializers like Xavier etc. For a value, if the train WER doesn't decrease after around 10-20 steps, you can quit the training and try some other value. If nothing works, please wait until the release of the pretrained weights (which I will possibly be able to do soon). Meanwhile, I will also try to see if I can find any solution to this problem.
Thanks.

@yuexianghubit have you been able to solve this issue?

Yes, I just change the seed value, and then it did help. The final performance I get is about 57%, close to your result.
Thanks.

Great!! 👍
I am closing this issue for now as changing the seed value seems to work.

A more better solution that seems to be working in such cases is lowering the learning rate.


Avoid FileNotFoundException when looking for the latest snapshot of user #3902

Purpose

Linked issue: close #3902

Tests

API and Format

Documentation

@JingsongLi


Horizontal scroll sometimes doesn't work

Have your tried latest update? I guess it has been fixed. If you still face this issue please comment, I'll reopen it.


Troubleshooting an Issue

While testing out the wrapper, and using example.js every time I would put in my token/ERLC api, it gives me this feed back.

I’ll also add that I’ve double checked at the moment my token section looks like this
 note the token that I have posted is not active at the moment and I have swapped the active for the inactive for the photo

Sorry I an reading this so late, I will look into the issue and try and fix it ASAP

I am going to start working on adding better logging first since the error happened pretty far down the code meaning it is not due to your token being wrong. I hope to have this done and fixed by the end of this week.

On further inspection it appears that PRC has changed their error codes (major inconsistency with reference docs and the error code docs since the two show two different error codes and descriptions) I will see if just updating the codes will fix the issue.

No response, assuming resolved.


recipe project added

Type of change

[x] Added new project
[ ] Bug fix
[ ] New features
[ ] Enhanced documentation

Changes proposed in this pull request

Project name :

Project: Simple Recipe Organizer

Short description :

Features:
Recipe Storage: Users can add new recipes with a title, ingredients, and instructions.
Recipe List: Users can view a list of their saved recipes.
Recipe Search: Users can search for recipes by title.
Recipe Deletion: Users can delete recipes.
Checklist

[x] The code is Python 3 compatible
[x] I have added relevant comments in my file to make code understandable
[x] I have added my project in a folder which includes all the necessary files

Fixes #382
Please add a hactoberfest-accepted label if you're going to merge this PR.
TIA
Proof of work:

Hey @Mrinank-Bhowmick can you please check this out? TIA


Combined SDO signals require pullups on line driver/buffer inputs.

Right now, a high impedance input on one of the line drivers can cause the output of the line driver to be driven low. When one of the encoders is not connected, the associated SDO line is unknown, and this causes problems with the other SDO line. Adding pullups on the inputs will cause the outputs from the line drivers to be driven high, resulting in the correct "oring" functionality.

For the first article provided to DSES, this has been fixed by shorting the two SPI SDO lines together before the line driver. This has been tested and works fine, but the SPI devices will now need to drive the lines for both encoders. In the future, this might be fixed by gating the SDO lines with the CS lines.


onDidChangeTab fires twice when dirty state changes

Testing #145585

Have two editor groups
Modify the active file in one of the groups
Hit save to mark editor not dirty
:bug: two onDidChangeTab events are fired

Also, should onDidChangeTab fire when a tab group closes? Right now it doesn't, but the other two events do fire

4. 🐛 two onDidChangeTab events are fired

Two events when you hit save? You should get one for when you make the edit because the tab becomes dirty and then one when you hit save because the tab is no longer dirty.

Also, should onDidChangeTab fire when a tab group closes? Right now it doesn't, but the other two events do fire

Probably not since we don't have any tab to return to you as it is gone

I only see one event fired now on save, and isDirty is correctly updated, thus closing.