When unloading the integration, runtime errors occur

2024-05-05 11:36:06.537 DEBUG (MainThread) [custom_components.tuya_local] Unloading entry for device: REDACTED
2024-05-05 11:36:06.538 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Loaded device config simple_dual_switch.yaml
2024-05-05 11:36:06.538 DEBUG (MainThread) [custom_components.tuya_local.device] Stopping monitor loop for Dual switch
2024-05-05 11:36:06.538 ERROR (MainThread) [homeassistant.components.switch] Error while removing entity switch.dual_switch_switch_2
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1353, in async_remove
await self.__async_remove_impl(force_remove)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1369, in __async_remove_impl
await self.async_will_remove_from_hass()
File "/config/custom_components/tuya_local/helpers/mixin.py", line 111, in async_will_remove_from_hass
await self._device.async_unregister_entity(self)
File "/config/custom_components/tuya_local/device.py", line 195, in async_unregister_entity
await self.async_stop()
File "/config/custom_components/tuya_local/device.py", line 170, in async_stop
await self._refresh_task
TypeError: object Future can't be used in 'await' expression
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 908, in async_reset
await entity.async_remove()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1358, in async_remove
self.__remove_future.set_result(None)
asyncio.exceptions.InvalidStateError: invalid state
2024-05-05 11:36:06.540 INFO (MainThread) [custom_components.tuya_local.device] Deleting device: REDACTED
2024-05-05 11:36:06.540 DEBUG (MainThread) [custom_components.tuya_local.device] Stopping monitor loop for Dual switch
2024-05-05 11:36:06.540 ERROR (MainThread) [homeassistant.config_entries] Error unloading entry Dual switch for tuya_local
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 724, in async_unload
result = await component.async_unload_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/tuya_local/init.py", line 517, in async_unload_entry
await async_delete_device(hass, config)
File "/config/custom_components/tuya_local/device.py", line 655, in async_delete_device
await hass.data[DOMAIN][device_id]["device"].async_stop()
File "/config/custom_components/tuya_local/device.py", line 170, in async_stop
await self._refresh_task
TypeError: object Future can't be used in 'await' expression
2024-05-05 11:36:06.921 WARNING (MainThread) [custom_components.tuya_local.device] Dual switch receive loop has terminated

Hmmm, this seems to be related to the reload workaround using "Home Assistant Core Integration: Reload config entry -> entity-ID". When disabled there are no errors in the log anymore.

That is a trigger, not a cause. The bug will still show up whenever the integration is stopped.

I am seeing this too after upgrade to 2024.5.2 today. The integration itself says ‘Failed to unload’. Anyone has  figured out any workaround ?

This fixes it but I don't know if it's a correct and complete fix:
if self._refresh_task:
await asyncio.wrap_future(self._refresh_task)

This fixes it but I don't know if it's a correct and complete fix: Chang:
        if self._refresh_task:
            await self._refresh_task

to
        if self._refresh_task:
            await asyncio.wrap_future(self._refresh_task)

Hey mate, I tried this but then my integration won’t reload devices at all

For me the reload is slower - sometimes quite a bit slower but it does reload the device seemingly correctly in the logs:
2024-05-09 21:48:56.796 INFO (MainThread) [custom_components.tuya_local.device] Deleting device: 24142854d8bfc0c9dcd0
2024-05-09 21:48:56.797 INFO (MainThread) [custom_components.tuya_local.device] Creating device: 24142854d8bfc0c9dcd0

For me the reload is slower - sometimes quite a bit slower but it does reload the device seemingly correctly in the logs: 2024-05-09 21:48:56.796 INFO (MainThread) [custom_components.tuya_local.device] Deleting device: 24142854d8bfc0c9dcd0 2024-05-09 21:48:56.797 INFO (MainThread) [custom_components.tuya_local.device] Creating device: 24142854d8bfc0c9dcd0
And if I made local edits to the device yaml it is reflected post-reload.

I just tried it again and it worked ok. I’ll try it for a few days and report back. Earlier when it wasn’t working was on a device that was unavailable in HA but was available in the Tuya app and it wouldn’t reload, just hung.

I suspect without that change, there may be a conflict causing a failure, and the delay waiting for the device to finish unloading should avoid that

ut that change, there may be a conflict causing a failure, and the delay waiting for the device to finish unloading should avoid that
I think with the fix it's going to actually wait on the device so if the device is hung the reload will hang too?

The integration itself says: "Failed to unload"

+1 to also having this error

This fixes it but I don't know if it's a correct and complete fix: Chang:
        if self._refresh_task:
            await self._refresh_task

to
        if self._refresh_task:
            await asyncio.wrap_future(self._refresh_task)

This fixed worked for me:

Fix works for me also

Using the suggested fix from HA dev on #1917 instead of the previous PR #1876 fix for #1871 also seems to fix this.


Move create, put, and patch implementation to a common class for all the entities

Same logic for create, put and patch are cut and pasted across many entity classes. Move all this functionality to the base class EntityRepository. This also cleans up a lot of helper methods in EntityUtil.

This work was completed as part of other issues.


Task_10_Completed

SourceCode/2023/oct2023/Basics/Praveenraja S V/Task_10/project.json
File: NoFile

You've missed out on putting the Automation Hub URL. To solve this, here's what you do. You open "Project Settings", and you put in the required information over there.

You've added a lot of unnecessary packages like UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities and UiPath.UIAutomation.Activities. They are not even used here. Get rid of them. It'll make your process run faster.

Score: Code completion 1.5, Execution 1, annotations and comments 0.5.
File: Main.xaml

I see a missing Log Message in Main.xaml workflow. When things go wrong, these messages help us understand what happened. You should use them.

Also, you've got a redundant sequence 'User Selection from 1-7'. It's making things messier here. Here's how you can clean it - use the Remove Surrounding Sequence option in the UiPath Studio context menu.

Score: Code completion 1, Execution 1.5, annotations and comments 0.5.
Remember, writing simpler code makes it easier for others to understand and for you to maintain. Keep working on it.

@PRAVEENRAJA1699
Task -10
Code verified.


Added logic to create and display client. Made fields nullable.Fixed …

…global routing

not sure what to do


_/- redirection does not work for rustdoc paths

Thanks #712 fixes the crate name unequal on -/_ bug. https://docs.rs/async_std can redirect to https://docs.rs/async-std/1.5.0/async_std/ . However, some path still get 404 The requested resource does not exist, for example, this URL: https://docs.rs/async_std/1.5.0/async_std/task/fn.spawn.html
Rust Search Extension shipped a new feature in recently to search the external crate's doc, this would be annoying if this bug wouldn't fix.

This seems to me like a bug in Rust Search Extension. We intentionally did not redirect for exact paths under the rationale that if you had an exact path, you already knew the exact name of the crate. I think it would be better to fix Rust Search Extension to instead use the proper url.

I don't think this is a bug of the extension. I mean https://docs.rs/async_std/1.5.0/async_std/task/fn.spawn.html should also be redirected to https://docs.rs/async-std/1.5.0/async_std/task/fn.spawn.html .

I understand what you're asking, I'm saying this would be difficult on our end and I don't see the benefit since the only people using that path seem to be your search extension.

I'm willing to take a PR adding this but otherwise I don't plan on working on it. The PR should

include tests using crate::test::wrapper
redirect to the normalized url only if the original file was not found

You can find the normalized url using the index in the database, see https://github.com/rust-lang/docs.rs/blob/master/src/web/mod.rs#L265 for an example.

Thanks, @jyn514 . I think I can do this. 😸

See also assume_exact and rustdoc_html_server_handler.

This is fixed by #736

Deployed, https://docs.rs/async_std/1.5.0/async_std/task/fn.spawn.html no longer gives a 404 :)

Deployed, https://docs.rs/async_std/1.5.0/async_std/task/fn.spawn.html no longer gives a 404 :)

Wow, I can't believe this is so efficient to ship production! 🎉🥳


Webpage documentation issue

Sorry I'm a stickler for documentation. In your website  you note
"We recommend you install the Slim Framework with the Composer dependency manager." Yes super cool but then you do not state how. In gitub though you do... So suggest you add in this important line of text into your homepage to prevent confusion, as I was rather baffled at first by the next sentence on your homepage.
SO INSERT INTO HOMEPAGE:
$ composer require slim/slim "^3.0"
This will install Slim and all required dependencies. Slim requires PHP 5.5.0 or newer.

please open an issue on our Website Repo for this :)
https://github.com/slimphp/Slim-Website

Sure

ty sir :)

Just $ composer require slim/slim is enough.


opportunities model

What changed

first stab at opportunities data model

TODO:

[ ] Manage task for importing all categories/subcategories into database
[ ] Signup form successfully creates uses
[ ] Index has all of the proper content.

@shellicious can you attach the design mockups here?

Style guidance:

Yellow color is: #FFCE00
Light gray is: #F2F2F2
Bolded heading text is 36pt.
Bolded heading text on the landing page ("The City of Pittsburgh...") is 48pt. The unbolded text below is 36pt.
Text in the email sign-up box and button on the landing page, above the fold, is 24pt
Body and button text is 18pt

If text appears too large, scale things down from 48 / 36 / 24 / 18 to 36 / 24 / 18 / 14.

@shellicious how wide is this stuff? I'm working off of the default 12-column grid. I'm using only 10 columns across, which is 750px wide. Yours seem to be a bit wider; how does it look if you use that width?

@bsmithgall that should be fine. It's about 780px.
Pro-tip: Command+Shift+4 and clicking & dragging allows you to define an area of the screen to take a screenshot of. It ALSO allows you to measure stuff on-screen, for future width/height questions.

30px changes spacing in the font-size pretty dramatically, though.

Also, I'm going to have to write some JS to handle the "another category" piece.

750px instead of 780px should be fine, so you shouldn't have to blow up the font.

"Signup" should be "sign up" and over in the right. Vendors wouldn't see the admin/profile/login links, right?

type in nav bar should be the same size

footer should be same width as body content

Try 1.5 spacing between lines on the text over the splash image, and the question text on the landing page. It looks slightly awkwardly close together.

15px more spacing above and below 'add another category' button on Signup page.

same with 2nd Signup email field on landing page

subcategories should be in regular caps (I can do this tomorrow)

Everyone will see a login link, there's no sensible way to hide it (we couldn't tell if someone is a vendor unless they, for example, logged in and were tagged that way). The only solution would be to hide it from everyone, which I'm not sure is a great idea.

Type in navbar should be the same size

Are you talking about the brand thing on the left? That's just a placeholder until we get an actual logo. We can change it, but it will be more work to undo later, so I'm more in favor of just leaving it as is tbh.

Can we center the footer? I know that you have a predisposition against centering, but in this case it really is a nice unification piece.

Remaining TODO:

[ ] Add "All" choice for the dropdown selection
[ ] Dropdowns should be alphabetical
[ ] Links on the front page (either find them or make them not links)
[ ] Email templates sending properly


Memory leak on Popup with ItemsControl and UserControl with empty Binding

Describe the bug
When having a Popup with an ItemsControl that uses a UserControl as DataTemplate, reopening the popup creates new instances of the UserControl and keeps the past ones on memory, never disposing of them. Removing the DataContext="{Binding}" from the xaml solves the leak.
The output console also prints [Binding]Error in binding to 'AvaloniaMemLeak.Controls.DropdownPackageControl'.'DataContext': 'Null value in expression '{empty}' at ''.'(DropdownPackageControl #...) every time for each new UserControl instance, I'm not sure why.
To Reproduce
Create a Window with a Xaml like so
<Button x:Name="PART_footer_selectButton"
        Padding="7"
        Background="Blue"
        HorizontalAlignment="Center"
        VerticalAlignment="Center">
    Press me
</Button>

<Popup x:Name="PART_footer_selectPopup"
       IsLightDismissEnabled="True"
       PlacementTarget="{Binding #PART_footer_selectButton}">
    <ScrollViewer Background="Yellow">
        <ItemsControl ItemsSource="{Binding PackageViewModels, Mode=OneWay}"
                      Padding="1"
                      Margin="1" x:CompileBindings="True">
            <ItemsControl.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel Spacing="1"/>
                </ItemsPanelTemplate>
            </ItemsControl.ItemsPanel>
            <ItemsControl.ItemTemplate>
                <DataTemplate DataType="vm:PackageViewModel">
                    <my:DropdownPackageControl x:DataType="vm:PackageViewModel"
                                               DataContext="{Binding}"/>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>
    </ScrollViewer>
</Popup>

and bind the button's Click to the popup's Open on the code-behind. Open and close the popup many times and then take a snapshot of the heap using Visual Studio and search for "DropdownPackageControl". There will be many more instances than the 5 ones expected:

If you remove the DataContext="{Binding}" piece from the DataTemplate, the object count does not increase. Not sure if it replaces the old instances or caches them.
Expected behavior
Using DataContext={Binding} on a ItemsControl expected to not keep past UserControl instances on memory and thus cause no memory leak.
Avalonia version
11.0.10
OS
Windows
Additional context
Repro repo: https://github.com/Arthur-Camatti/AvalPopupMemLeak.
Periodic GC.Collect() calls have no effect.
Using .NET 8.0.
Same behavior with Avalonia 11.1.0-beta2.
Same behavior with ReactiveUserControl instead of UserControl.
Haven't tested default Avalonia controls with {Binding}.
Tested with and without x:CompileBindings.
Have confirmed that every Control under the Popup's logical tree is the same instance, except the UserControl (maybe also the ContentPresenter?). I might be mistaken though.

I also encountered this problem in 11.1.3, and I don't know if it was solved


TypeError: Domains must be instances of subclasses of the Domain class

running tests with Python 3 raises
TypeError: Domains must be instances of subclasses of the Domain class

See
$ nosetests -s -v
test_constraint.test_abc ... ERROR
test_constraint.test_coins ... ERROR
test_constraint.test_einstein ... ok
test_constraint.test_rooks ... ERROR

======================================================================
ERROR: test_constraint.test_abc
----------------------------------------------------------------------
Traceback (most recent call last):
  File "//anaconda/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/Users/scls/github/python-constraint/tests/test_constraint.py", line 15, in test_abc
    solutions = abc.solve()
  File "/Users/scls/github/python-constraint/examples/abc/abc.py", line 15, in solve
    problem.addVariables("abc", range(1,10))
  File "/Users/scls/github/python-constraint/constraint/__init__.py", line 172, in addVariables
    self.addVariable(variable, domain)
  File "/Users/scls/github/python-constraint/constraint/__init__.py", line 144, in addVariable
    raise TypeError("Domains must be instances of subclasses of "\
TypeError: Domains must be instances of subclasses of the Domain class

======================================================================
ERROR: test_constraint.test_coins
----------------------------------------------------------------------
Traceback (most recent call last):
  File "//anaconda/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/Users/scls/github/python-constraint/tests/test_constraint.py", line 21, in test_coins
    solutions = coins.solve()
  File "/Users/scls/github/python-constraint/examples/coins/coins.py", line 18, in solve
    problem.addVariable(variable, range(int(total/value)))
  File "/Users/scls/github/python-constraint/constraint/__init__.py", line 144, in addVariable
    raise TypeError("Domains must be instances of subclasses of "\
TypeError: Domains must be instances of subclasses of the Domain class

======================================================================
ERROR: test_constraint.test_rooks
----------------------------------------------------------------------
Traceback (most recent call last):
  File "//anaconda/lib/python3.4/site-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/Users/scls/github/python-constraint/tests/test_constraint.py", line 59, in test_rooks
    solutions = rooks.solve(size)
  File "/Users/scls/github/python-constraint/examples/rooks/rooks.py", line 14, in solve
    problem.addVariables(cols, rows)
  File "/Users/scls/github/python-constraint/constraint/__init__.py", line 172, in addVariables
    self.addVariable(variable, domain)
  File "/Users/scls/github/python-constraint/constraint/__init__.py", line 144, in addVariable
    raise TypeError("Domains must be instances of subclasses of "\
TypeError: Domains must be instances of subclasses of the Domain class

----------------------------------------------------------------------
Ran 4 tests in 0.198s

FAILED (errors=3)

Pinging @niemeyer (original author of python-constraint) http://niemeyer.net/python-constraint
@mbutterick https://github.com/mbutterick/csp
@ac0x https://github.com/ac0x/python-constraint
@cfobel https://github.com/cfobel/python___labix_constraint
There is now in this repository unit tests and continuous integration to help to maintain this package.
Feel free to help but submitting pull requests

Hi everyone,
Very happy to see you're moving this project forward and providing a proper place for people to collaborate. Great job, thank you.

My pleasure.
@niemeyer you have been invite in python-constraint GitHub organization (you need to accept this invite)
I have grant you (of course!) owner rights.


OSV test fixes

Please have a look at the individual commit messages for the details.

This is (by mistake) also contained in https://github.com/oss-review-toolkit/ort/pull/5565, which got merged already.

This is (by mistake) also contained in #5565, which got merged already.

I reviewed in the wrong order and overlooked the new class name :-( sorry.

Anyhow, what do you think about renaming the class in a follow up?

Hmm, I'd refer VulnerabilityRef then. Fine with you?


Does Bamboo support receiving emails?

Or is it just sending? Would be nice if this was explicitly answered somewhere.

Bamboo is just for sending email


Missing gene_names after cell segmentation

Thanks for the detailed tutorial!
I'm utilizing stereopy==1.3.0 for cell segmentation, and I noticed that the final gef file reads are blanking out the gene names, with v3  selected for the deep learning model. I'm wondering if this is an issue with the version? Or is there something wrong with my code somewhere?
from stereo import image as im
model = '/data/work/Tutorial/stereopy/seg_models/Deep_Learning_Model_v03/cell_segmetation_v3.0.onnx'
image = '/data/work/Data/SAW-ST-V7/03.register/ssDNA_C03538E6_regist.tif'
output = '/data/work/Results/01_mask_output/ssDNA_C03538E6_regist_v3_mask'
tissue_seg_model = '/data/work/Tutorial/stereopy/seg_models/tissueseg_bcdu_SDI_230523_tf.onnx'
im.cell_seg(
model_path=model,
img_path=image,
out_path=output,
method='v3',
tissue_seg_model_path=tissue_seg_model,
tissue_seg_staining_type='ssDNA',
gpu='-1'
)
from stereo.tools.cell_cut import CellCut
cgef_out_dir = "/data/work/Results/02_cell_cut_out"
bgef_path = "/data/work/Data/SAW-ST-V7/02.count/C03538E6.raw.gef"
mask_path = "/data/work/Results/01_mask_output/ssDNA_C03538E6_regist_v3_mask/ssDNA_C03538E6_regist_mask.tif"
cc = CellCut(cgef_out_dir=cgef_out_dir)
out_path = cc.cell_cut(bgef_path=bgef_path, mask_path=mask_path)
data_path = '/data/work/Results/02_cell_cut_out/C03538E6.raw.cellbin_v3.gef'
datav3 = st.io.read_gef(
file_path=data_path,
is_sparse=True,
bin_type='cell_bins',
)

This is the genes that should appear under SAW

I updated the version to 1.3.1 according to the announcement, but still missing >1000 genes

this was a bug of gefpy, upgrade it to latest: pip install --upgrade gefpy


Add dictionary extension

Description
Search any words with multiple online dictionaries or translation engines in one place -- lightweight, zero dependencies.

Search across multiple online dictionaries and translation engines
Provides command Search from Cursor Selection to quickly look up your currently selected words. Feel free to bind a hotkey like double ⌘ cmd for quick access.
View related definitions and example sentences when available.
Supports auto reverse(fallback) search, whenever the detected input matches the default language.
Access TTS(Text-to-Speech) for the following engines:

Google Translation
Youdao

[Bonus] You can configure this extension directly from the command line in an old-fashioned way!

Screencast

Checklist

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

@thomaslombart I just added a description and some screenshots. Apologies for not checking the actual PR comments and assuming everything was done after running ray publish.😥

@thomaslombart Thank you for taking the time and effort to review my PR. I will go through each feedback and submit a new commit this week.

So I fixed the configuration view that appeared on the initial load. The issue was actually caused by an unset engine variable on the dropdown menu, it now uses Google as the engine and 'en' as the language.
I have also considered using a metadata view, but it appears that many definitions not come with related examples:

There would be too much white space on the metadata view.😔
I switched to using useCachedState. I tried to create a custom hook that also subscribes to the cache on view mount, triggering a rerender when specific keys update.   Turns out the useCachedState already includes this function 👍, although it is not mentioned in the documentation.
lastly, I added some custom messages on the emptyview:

Thanks for addressing the issues 💪
I've reviewed it again and have spotted other things.
Wrong title for empty screen
The title says The word(s) will be translated to 'en' when using Urban Dictionary. As far as it looks, there is no translation with the urban dictionary, right?

Also for Google Translation, ideally, the world should correspond to the plain language. For example: The word(s) will be translated to 'en' would become The word(s) will be translated to English.
Empty screen while searching
The empty screen still shows up when you start searching for a word. If a user starts searching the screen should disappear.
https://user-images.githubusercontent.com/16003285/233020992-d28c4a88-c05a-45a0-8803-b887bc6ee771.mp4
Urban dictionary result
I found the urban dictionary detail view to be a bit weird as the name gets repeated many times. Why is that and is it possible  to make it less redundant?

@thomaslombart

The empty screen still shows up when you start searching for a word. If a user starts searching the screen should disappear.

It appears that the default empty view will always render as long as the list is empty, so I tried to prevent my custom empty view from rendering when the query is empty. However, the default view is still being rendered.
<List>
...

  {
        query?null:<List.EmptyView title={emptyTitle} description={emptyDescription} />
  }

 </List>

https://user-images.githubusercontent.com/1713574/233427128-12d6e170-5a30-4b5b-b8bd-6e1e70dd2b58.mov
Although it is not displayed when isLoading, here I applied a debounce on input so fetch only starts when the user stop typing. Is there another way to control the empty view?

I found the urban dictionary detail view to be a bit weird as the name gets repeated many times. Why is that and is it possible to make it less redundant?

Urban Dictionary always shows multiple definitions that users submitted for each term. So basically it has two endpoints, one for searching and another for browsing the specific term. Here is how it's actually implemented on its website:

The title says The word(s) will be translated to 'en' when using Urban Dictionary. As far as it looks, there is no translation with the urban dictionary, right?

Yes, this message is a generic template and is shown on whatever the dictionary selected, I will submit a new commit to allow some dictionaries like Urban to have their own messages.

Although it is not displayed when isLoading, here I applied a debounce on input so fetch only starts when the user stop typing. Is there another way to control the empty view?

Using isLoading is the way to go to for that. The no results screen won't show while isLoading is true.

Although it is not displayed when isLoading, here I applied a debounce on input so fetch only starts when the user stop typing. Is there another way to control the empty view?

Using isLoading is the way to go to for that. The no results screen won't show while isLoading is true.

Hi @thomaslombart, I think I got an unexpected result. As you can see from the screenshot, even when isLoading is updated to true and the loading bar pops up, the empty view is still present.

For me, the empty view only dismisses when the isLoading variable is set to true initially.

That's happening because the component got rendered initially with isLoading set to false.. To prevent that, you need to make sure you on the first render that isLoadingis set totrue`.


bug: Error at install time - node postinstall

Type: bug
Platform: all
I'm getting a blocking error at install time. Here's the full trace- https://gist.github.com/tejasmanohar/0ddc4c41b2272fe5b202. I'm guessing it's due to node postinstall instead of npm run postinstall somewhere... but again, that's just a guess.

Greetings @tejasmanohar!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

My guess about npm run postinstall was wrong. Just saw that postinstall is a script here- https://github.com/ForbesLindesay/spawn-sync/blob/master/postinstall.js. Looks like it more boils down to the path of it when it's being executed. Hmmm-- any ideas? :)

Did you accidentally change npm's install directory from ~/.npm to ~/.nvm?

@richardsun29 Didn't do anything accidentally as far as I know. /Users/tejas/.nvm/versions/node/v5.0.0 is my NPM prefix for this node installation. NVM, a very popular tool (so nothing out of ordinary as per installations), sets it up that way so that globally installed packages are managed on a version-to-version basis. i have many other globally installed CLIs working fine :)

Ah my bad :) Not sure why all the dependencies have a "no such file or directory" warning though. It could be trying to execute a file that doesn't exist

Yea, unsure as well :\

Worked after a re-install of Node. I don't know why but ok :)


Refactoring login screen

Contents
- Login Button
- Image asset
- Stateless Container

Complete

[x] Login Button
[x] Image asset
[x] Stateless Container


No Colors in Progressbar (Windows)

Description
I have use your Progressbar Example but this show not the color its only white, i using Colorama to formate linux colors in windows this but only your progressbar dont show this.
How can I Fix this? Or does that not work under Windows?
Code
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals
from __future__ import with_statement

import functools
import random
import sys
import time

import progressbar
from colorama import Fore, Back, Style, init

def color_bar_example():
    widgets = [
        '\x1b[33m Colorful example: \x1b[39m',
        progressbar.Percentage(),
        progressbar.Bar(marker='\x1b[32m█\x1b[39m'),
    ]
    bar = progressbar.ProgressBar(widgets=widgets, max_value=10).start()
    for i in range(10):
        # do something
        time.sleep(0.1)
        bar.update(i + 1)
    bar.finish()

if __name__ == '__main__':
	init();
	print(f'\x1b[32m Colorful example: \x1b[39m\n')
	color_bar_example()
	print('\n')

Versions

Python version: python 3.7.7
Python distribution/environment: None only in CMD
Operating System: Windows 10
Package version: progressbar2 3.53.1

Demo Image

Ok i have find out, with a little trick.
How i use in the windows console color.

Oddly enough, it partially works out of the box for me on Python 3.7.7:

Can you share what trick helped for you?

My tricky is simple,
i have for convert the ANSI escape codes,
insert follow lines bevor i import the progressbar.

**For windows CMD i use Colorama for show the colors.
but it works the same with other methods, bsp: os.system("") & '\033[32m' ... **
And then i have aktivate the PYCHARM ANSITERM from the Progressbar2 modul:
(so I did not have to tamper with the progressbar module)

with:  os.environ['PYCHARM_HOSTED'] = '1'

After this i can use the Colors in the progressbar2

If you find a better solution just give it to me.
Otherwise it works without this simple change only in pyCharm or in Linux (VM) but not in the Windows 10 console (CMD).
I have used Colorama under python 2.7.x before, so I still use it.
So there is no special reason why I use it.

Great! Thank you for the explanation. I'll keep this issue open so I can natively incorporate it in the future somehow :)

No problem, I have been looking for a good progress bar for a very long time. And this one had all my wishes so I wanted it in color xD. Even if it didn't work in the beginning I tried to find something to make it work, even if I had to do some tricks.
I hope that it is or will be helpful.


Meta Data doesn't download entire description

when downloading it goes, "description...." also meta data doesnt include tags and mentioned users

maybe it's something with your json viewer, file was damaged or not fully downloaded


WIP: API Rework

Please add the following information to your pull request:
Please describe what your PR is fixing
Re-write the API so it uses a more modern JSONRPC library, so we can lose one of our 'weird' dependencies.
Also moves the documentation previously hosted here to the codebase, so it can be auto generated.
Concretely, which issues does your PR solve? (Please reference them by typing Fixes/References Inter-Actief/amelie#<issue_id>)
Fixes #684
Hopefully also fixes these other API issues, but not sure:
References #601
References #584
Does your PR change how we process personal data, impact our privacy document, or modify (one of) our data export(s)?
no
Does your PR include any django migrations?
no
Does your PR include the proper translations (did you add translations for new/modified strings)?
no, my PR does not include translations
Does your PR include CSS changes (and did you run the compile_css.sh script in the scripts directory to regenerate the compiled.css file)?
no, my PR does not include CSS changes
Does your PR need external actions by for example the System Administrators? (Think about new pip packages, new (local) settings, a new regular task or cronjob, new management commands, etc.)?
no
Did you properly test your PR before submitting it?
kind of
TODO: Needs proper testing using the actual IA app.
However, this is a bit difficult because we don't have a working build where we can modify the backend API that is used. I will try some sysadmin magic to see if I can make only my app redirect to this API running on staging or a beta environment, to see if it works properly.
If I can't get this working, the API tests should also be enough to ensure that the app also keeps working...
With postman the responses seem to be correct.

The API tests seem to be very strict to the output of the old library, but the source code of the App itself seems to be more accepting. Next time I'll fix up the tests and do some more testing with the app and the narrowcasting/cookie corner screens that also use the API.

Ready for review @WKobes @bramvandartel


This looks awesome!

Mind if I put this into the readme for Chrono's main repo?

Sure, go for it!
-Neil

On Jan 3, 2017, at 10:04 AM, Ben A<EMAIL_ADDRESS>wrote:
Mind if I put this into the readme for Chrono's main repo?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Add documentation about the official middlewares

Add a section in the docs explaining how each of the official middlewares works.

Done


Update Settings “general”

Automatically generated by Netlify CMS

👷 Deploy Preview for docbracing processing.

Name
Link

🔨 Latest commit
145c09a00bfe7a5b5b6f4fba0ed18fde98ecbbb5

🔍 Latest deploy log
https://app.netlify.com/sites/docbracing/deploys/65106ea27ab71b000831c5cd


Remove Solaris support

Unfortunately, Solaris support for Docker will likely not reach completion, so removing these files as they are not in use and not maintained.

Codecov Report

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

@@            Coverage Diff            @@
##             master    #2002   +/-   ##
=========================================
  Coverage          ?   38.06%
=========================================
  Files             ?      137
  Lines             ?    27362
  Branches          ?        0
=========================================
  Hits              ?    10415
  Misses            ?    15676
  Partials          ?     1271

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 2bad0e8...89d1314. Read the comment docs.


Use priority tags when sorting puzzles

Puzzles are sorted by priority tag (high priority > no tag > low priority). Sort is within puzzle type, so low-priority feeders still appear above all metas.

Thank you!!

Thank you!!


[Feature request] Increase titles margins, or allow to customize styles

I look that titles are excessive near of previous paragraph.
Then I suggest to set a top margin to maintain more space between previous paragraph and current title. It can be relative of title's font size, in CSS can be: margin-top: 1.6em
And... margin-bottom: 0.8em
Alternativelly, it is very good if there is a setting to customize che text styles.
Thanks

What do you need the title here?
I will probably consider adding text styles.

Sorry...
I mean of text with one or more "#" in top of row.
So the row will become Title of written text.

You mean Markdown preview?

Yes, exactly!


Update cellery setup status to be compatible with kubectl v1.14.3

Resolves https://github.com/wso2-cellery/sdk/issues/524

Codecov Report

Merging #525 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #525   +/-   ##
=======================================
  Coverage   64.45%   64.45%
=======================================
  Files          34       34
  Lines        1176     1176
  Branches       98       98
=======================================
  Hits          758      758
  Misses        365      365
  Partials       53       53

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 e5aa31d...eac7bb0. Read the comment docs.


check that requested cores >= 1 and < node core total (issue #92)

Coverage remained the same at 94.306% when pulling d782bfc2f921d740575657cc4c98d74e0ea65e91 on slefrancois:warn_core_over into 4e38f34d87d86cda6a40403243cd8fbb2d7711e6 on SMART-Lab:master.

Can you make unit tests to check your fix?

Yup just add some tests in test_smart_dispatch.py and I'm good with merging this.

Coverage increased (+0.04%) to 94.341% when pulling 8a9ce7f12830b5fc50c5248f120857b2b3d336f0 on slefrancois:warn_core_over into 4e38f34d87d86cda6a40403243cd8fbb2d7711e6 on SMART-Lab:master.

LGTM


Remove the delegate when FetchRequestController deinits

I've been having some issues lately with a very hard to track bug every time I hit save on a DataContext. I realized this happened only when I had some FetchRequestController instances (I have UICollectionViews inside UITableViewCells.
Finally, I discovered that the issue was coming from an NSFetchedResultsController that was trying to access a FetchRequestController (AlecrimCoreData wrapper) pointer that was already freed from memory.
2016-05-05 13:10:02.044 Context[685:226043] -[NSFetchRequest controllerWillChangeContent:]: unrecognized selector sent to instance 0x15c55c4a0
2016-05-05 13:10:02.044 Context[685:226043] CoreData: error: Serious application error.  Exception was caught during Core Data change processing.  This is usually a bug within an observer of NSManagedObjectContextObjectsDidChangeNotification.  -[NSFetchRequest controllerWillChangeContent:]: unrecognized selector sent to instance 0x15c55c4a0 with userInfo (null)
2016-05-05 13:10:02.045 Context[685:226043] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSFetchRequest controllerWillChangeContent:]: unrecognized selector sent to instance 0x15c55c4a0'
*** First throw call stack:
(0x1816cd900 0x180d3bf80 0x1816d461c 0x1816d15b8 0x1815d568c 0x183257e7c 0x1831cd080 0x1831ccf48 0x18315d108 0x181672fc4 0x1816727e4 0x181672564 0x1816d7de4 0x1815b30f4 0x181fa2d2c 0x18315d06c 0x1831d18d0 0x18315b78c 0x18315a240 0x100e652b0 0x1002af4c4 0x100091ce0 0x100e7daf0 0x1831cd080 0x101c79bb0 0x101c7f658 0x181684bb0 0x181682a18 0x1815b1680 0x182ac0088 0x186428d90 0x10023ab28 0x1811528b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

Just by adding a delegate = nil to that underlying NSFetchedResultsController solves the problem.
That's why I'm doing this pull request :thumbsup:

Hello.
I'm thinking if this is supposed to happen, since the delegate property from NSFetchedResultsController is unowned(unsafe). Maybe the delegate was captured in other place. For now if this will help to solve this error, putting a delegate = nil will not harm anyone. ;-)
I'd like to ask you to resubmit this PR to develop branch if you can.
Thank you. :-)

@vmartinelli to be honest, I'm very surprised as well, I'm the only developer on the project and I've been searching for underlyingFetchedResultsController references and found nothing. I'm also using bindToCollectionView but can't find any relationship to this bug either. The crash appears when I do a .save() call to the main DataContext.
I'll resubmit it, no worries 👍

Resubmitted to develop branch https://github.com/Alecrim/AlecrimCoreData/pull/136


META-2895-Prevent_attribute_value_exceeding_100K_characters

Prevent attribute value exceeding length of 100K char
Change description

Type of change

[x] Bug fix (fixes an issue)
[ ] New feature (adds functionality)

Related issues

https://linear.app/atlanproduct/issue/META-2895/prevent-ingesting-an-entity-with-attribute-length-exceeding-100k

Checklists
Development

[ ] Lint rules pass locally
[ ] Application changes have been tested thoroughly
[ ] Automated tests covering modified code pass

Security

[ ] Security impact of change has been considered
[ ] Code follows company security practices and guidelines

Code review

[x] Pull request has a descriptive title and context useful to a reviewer. Screenshots or screencasts are attached as necessary
[x] "Ready for review" label attached and reviewers assigned
[ ] Changes have been reviewed by at least one other contributor
[ ] Pull request linked to task tracker where applicable

This branch can be safely deleted once merged to beta as there is another branch for merging to master


feat: make rcases use the custom Nat eliminator

As a special case, makes the rcases machinery use Nat.casesAuxOn so that goal states see 0 and n + 1 rather than Nat.zero and Nat.succ n. This is a followup to enabling custom eliminators for cases and induction.
This doesn't use custom eliminators in general since rcases uses Lean.MVarId.cases, which is completely different from what cases and induction use.

This seems a bit specialized. I think it would be better to just use the default custom eliminator for the type in MVarId.cases (why is it "completely different from what cases does" in the first place?)

@digama0 Good, you saw this, I was going to ping you to take a look.
This is part of the "nat induction beautification" project. Leo was OK with custom induction principles for Nat in particular, and for induction/cases, the more general solution went through because it was easy.
There are two issues with Lean.MVarId.cases:

It is not able to analyze a custom induction principle, like what's done in Lean.Meta.getElimExprInfo, so there's more work that would need to be done if it's not just special casing Nat.casesOn (as Nat.casesAuxOn is defeq, so there's no harm in swapping it out).
It turns out enabling this custom induction principle breaks the equation lemma generator, which is why it's behind a flag. It really seems to be meant for doing cases to get pristine constructors.

Probably what would be better is to modify rcases to use the induction/cases framework than to use Lean.MVarId.cases, but that's not packaged up in a useable form. In the short term, having a special case for Nat would finish nat induction beautification.
I'm not sure about the right implementation for rcases, but I created this PR with one possibility to start that conversation.

Probably what would be better is to modify rcases to use the induction/cases framework than to use Lean.MVarId.cases, but that's not packaged up in a useable form. In the short term, having a special case for Nat would finish nat induction beautification.

I think that MVarId.cases should "use the induction/cases framework" to the extent possible. But as a short term measure I agree with the changes in this PR (we should have some issue or TODO to avoid losing track of this though).


lock in test_sigaction

What does this PR do
sigaction is process global, i think we should lock the signal handling mutex here to serialize this test

ok, it does not fix the issue:
https://github.com/nix-rust/nix/actions/runs/8703439323/job/23869616222?pr=2375

ok, it does not fix the issue: https://github.com/nix-rust/nix/actions/runs/8703439323/job/23869616222?pr=2375

Yeah, this is indeed something hard to deal with:<

@SteveLauC what do you think about using a RWLock instead of the Mutex for the SIGNAL_MTX? Then tests for process wide functions could lock it for write, and functions for thread local functions lock it for read?
from my understanding of POSIX / Linux, process wide are: sigaction, signal, sigsuspend, sigprocmask
and thread local are: pthread_sigmask, the sigwait family, and signalfd

Even though the this patch presented in this PR does not fix the issue, I think we still need to grab the lock in the test_sigaction(), thanks for catching it!

from my understanding of POSIX / Linux, process wide are: sigaction, signal, sigsuspend

Do you mean that sigsuspend() calls sigprocmask() under the hood to alter the signal mask?

What do you think about using a RWLock instead of the Mutex for the SIGNAL_MTX?
I think keeping the tests affecting just one thread in parallel is a good thing as it might catch some bug

Do you mean to increase concurrency so that we can reproduce the bug more easily and possibly get more information?

Do you mean to increase concurrency so that we can reproduce the bug more easily and possibly get more information?

I want to decrease concurrency: Right now, the tests touching only the thread local signal mask do not lock SIGNAL_MTX.
This races with the sigprocmask test. To prevent this, we could prevent the concurrency and take the Mutex in the functions that block signals for a single thread, but I think this would be too much as it would hide bugs.
So we need a Mutex that can be taken exclusively, while we manipulate the whole process, or shared, while we only use pthread_sigmask.

@SteveLauC After reading the previous comment, you can close this, as it is the same as your #2381 :)

Do you mean that sigsuspend() calls sigprocmask() under the hood to alter the signal mask?

I misread something and thought that sigsuspend would change the process signal mask - but posix 2008 and 2017 clearly say "thread", so never mind :)

I want to decrease concurrency: Right now, the tests touching only the thread local signal mask do not lock SIGNAL_MTX.
This races with the sigprocmask test. To prevent this, we could prevent the concurrency and take the Mutex in the functions that block signals for a single thread, but I think this would be too much as it would hide bugs.

Oh I get it, I am willing to give it a try:)

Close as it has been superseded by #2381


Create Super Admin not Working

I attempted to install this project and I am unable to create a super admin account. I am using a local MAMP server configuration and I get the following error:
Not Found
The requested URL /accounts/register was not found on this server.
It definitely is setup correctly with the SQL code and everything is in the root of the htdocs folder. Everytime I go and look for a view or anything to be able to setup the super admin I cannot find anything about it in the code. Am I missing something here?

This sounds like the rewrite isn't activated. For Mamp see the below link for rewrite settings.
http://stackoverflow.com/questions/7670561/how-to-get-htaccess-to-work-on-mamp.
Bob

Thank you for the information, for some reason MAMP is not liking any of the changes so I will need to do some debugging. Excited for when I can get this project working.

I am now getting the following error after checking all of the .htaccess file rights as well as mod rewrite being active:
404 Page Not Found
The page you requested was not found.
It now has the nice code ignighter styling which is a positive.
my htaccess file is as follows:
RewriteEngine on
RewriteCond $1 !^(index.php?|images|css|js)
RewriteRule ^(.*)$ http://localhost:8888/fflproject/index.php?/$1 [L]

Looked at some issues involving the mamp server.

Check the .htaccess file sometimes it gets changed to .htaccess.txt.

You should make sure that in your /etc/apache2/users/username.conf you have the following:
<Directory "/Users/username/Sites/">
Options Indexes MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all

The FollowSymlinks and AllowOverride are essential here. While you are hinting at both in your question, maybe you did not configure these correctly in tandem.
Make sure in httpd.conf /private/etc/apache2/extra/httpd-userdir.conf is included as well. It is by default.
After any modifications, restart the web server for the changes to take effect.

To debug mod_rewrite you can enable rewrite logging. You should enable that in /etc/apache2/httpd.conf:
RewriteLogLevel 3
RewriteLog /path/to/rewrite.log

This link has a tool that is out on git to test .htaccess and the rewrite mod to see if they are working.
https://docs.bolt.cm/3.0/howto/making-sure-htaccess-works


Add Debian Minimal Build Configuration Using the vSphere-ISO Packer Builder

This pull request adds a Debian Minimal Build Configuration that is built around the vSphere-ISO Packer Builder job. This allows others to build the Debian appliances without having to modify the ESXi hosts.  This job also upgrades the system firmware to EFI.
This was tested on vSphere 7.0U3 using VM version 19.

Hi @seanpmassey,
Thanks for the PR, just had a few comments that would be nice to fix before merging this.
Hope they make sense,


Local repositories (draft)

I've implemented a draft version of local repositories (works only with OASIS, and has a bunch of quirks with package names). Can you please take a look at it before coding #19?

Sorry, I noticed you had written this after I pushed my fixes for #19


CORE-12851: run signing service direct from flow operations processor rather than going via RPC, in order to eliminate problems with lack of robustness in crypto to crypto RPC calls

Perform flow crypto operations direct from the thread that picks up the Kafka topic, rather than crossing Kafka twice more.
Internally, the crypto worker implements a signing service, which provides operation to sign and verify signatures, as well as other operations such as creating and retrieve asymmetric keys. This exposed to Corda via 2 bus processor, each watching a Kakfa topic. One topic and bus processor is for flow operations, and the other for RPC operations. Up to this point, the bus  processor for flow operations would handle requests by posting them by  being RPC client, so posting to the RPC topic and waiting for a partition owned by that instance of the crypto processor. The trouble is that this is unreliable, since Kafka topics can and are rebalanced at any point, and there was no retry code.
This pattern of messages crossing kafka twice in each direction was done to allow, in the future, different instances of the crypto processor to handle a subset of keys. By posting crypto flow operations back to Kafka, any arrangement we have to make sure that a crypto processor instance with access to a specific key would extend to flow operations as well. However, we now think that for the foreseeable future all crypto processor instances will be able to access any key, and therefore this sophistication is not necessary, or, due to its inherent complexity and performance overheads, desirable.
Previously, we had 2 separate OSGi+Lifecycle service classes that subscribe to Kafka. Since they both now need to access the signing service, and since the signing service is not itself OSGi, that means that we would have to construct the signing service implementation class. It's also a lot of code, and in particular code using AbstractConfigurableComponent. Instead, we have Crypto Processor itself receive dynamic config then construct the Signing Service and the Kafka subscriptions.  This is much simpler, plus now the crypto processor itself actually does something more than report the overall health of the crypto processor as ready once the dependencies start. Rejected design alternatives were to create the signing service twice, each with its own cache, or make the signing service be OSGi+Lifecycle itself, which makes it harder to test.
Make the crypto service bus implementations exported, so that crypto processor can import them. Perhaps we could alter move the service bus implementations into crypto processor, but that can be done in a separate PR to keep this reviewable and minimise changes if this is backported.
I notice that FilterMyKeysFlowQuery avro message is unused, so have added a warning if it gets called. The Avro type is in the crypto-api repository so I haven't yet taken the step of removing it.
Add a silent entry point for CryptoFlowOpsBusProcessor, which does not log failures as errors with backtraces, to avoid printing distracting errors during the unit tests, which are part of the build. Arguably this is out of line with the rest of Corda, and is adding something to the production code base for testing, but I believe that builds should not print errors. On the other hand, if there are errors during production in cases we do not expect we do want to log errors, so that logging has to be aware of its context.
Rework the crypto flows operations bus processor unit tests. There was a lot of repetition of the machinery to actually run the flows,  mixed up with the assertions for specific tests which made it pretty hard to maintain, and the code all had to be touched since the underyling code is the signing service now rather than the crypto ops client.

Could we please shorten the PR description or at least the squashed text so that it gets merged with the least possible text so it's more quickly readable?

Also if we are to mention on why this relay used to be in place, maybe worth catching up with @mnesbit to double check.

This pattern of messages crossing kafka twice in each direction was done to allow, in the future, different instances of the crypto processor to handle a subset of keys. By posting crypto flow operations back to Kafka, any arrangement we have to make sure that a crypto processor instance with access to a specific key would extend to flow operations as well. However, we now think that for the foreseeable future all crypto processor instances will be able to access any key, and therefore this sophistication is not necessary, or, due to its inherent complexity and performance overheads, desirable.

I believe the above implies supporting multiple HSMs? But in these flow crypto requests I can't see anything implying potential routing to different HSMs i.e. routing to different crypto workers. @mnesbit could help us here.

Also if we are to mention on why this relay used to be in place, maybe worth catching up with @mnesbit to double check.

I've already discussed this with @mnesbit at length and I believe he wants this change made.

Could we please shorten the PR description or at least the squashed text so that it gets merged with the least possible text so it's more quickly readable?

I have eliminated some text, since I went a different direction after review with Ryan. However, I think everything in the PR description is relevant, and I am following our policy is to encourage detailed commit messages.


Italian language update

@4gray
Please merge. Thanks.

@4gray
Please remind to apply Italian language update before to release a new program version (I see  a new beta). Thanks.


Restore did not work because of outdated/incorrect documentation

I've just spent quite a lot of time figuring out why my restore is not working until i found out that in the restore script, the access key and secret fields should be called awsKey and awsSecret and not awsAccessKey and awsSecretKey as the docs suggest. Might be helpful if somebody would check what else is incorrect. (I will do it in a couple of days if nobody else does it before)

pr #69


Self-signed certificates are blocked in my country, how do I add my own cert from Let's Encrypt?

You can take a look at this https://www.reddit.com/r/homelab/comments/7ni550/how_to_make_openvpn_lowmaintenance_letsencrypt/ but this won't be supported by this project anyways.


docs-bug(COMPONENT): docs(api-docs/material-table): fixed description for MatHeaderRow

Documentation Feedback
Fix PR : https://github.com/angular/material2-docs-content/pull/20
Issue :
Description under MatHeaderRow extends CdkHeaderRow is

Footer template container that contains the cell outlet. Adds the right class and role.

However it should be,

Header template container that contains the cell outlet. Adds the right class and role.

Affected documentation page
https://material.angular.io/components/table/api#MatHeaderRowDef

ello, cool find - but you are not suppose to make PRs directly into material2-docs-content instead fork this repo to make necessary changes in docs. happy contributions!


[5.2] Add possibility to set ApplicationIntent=readonly for SqlServer

If you use a Microsoft SQL Server availability group you can route readonly connections to the slave replicas. This can be done if you add ApplicationIntent=readonly to the database connection.

Thanks.


ERROR: Service 'elasticsearch' failed to build: Please provide a source image with from prior to commit

Problem description

Extra information

Stack configuration

Docker setup
<!-- Replace this comment with the full output of the `docker version` command. -->

<!-- Replace this comment with the full output of the `docker-compose version` command. -->

Docker logs
<!-- Replace this comment with the full output of the `docker-compose logs` command. -->

This issue contains no description and none of the requested information, so I will close it for now. Feel free to reopen with a clear explanation and a way to reproduce. Thanks


[Enhancement] Support msgspec classes

Pydantic is great.
It would also be nice to support msgspec which is a low effort JSON parser and validator.

I don't think this is something that can be realistically supported (you'd basically need to completely refactor and split the entire library to support it)


[Search] Fix marshalling

Packages impacted by this PR
@azure/search-documents
Issues associated with this PR
Fixes #28478
Describe the problem that is addressed by this PR
Some properties aren't being passed through to the generated client. This PR unblocks a particular customer issue, but I'll follow up after having combed through the whole package.
What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Checklists

[x] Added impacted package name to the issue description
[x] Added a changelog (if necessary)

API change check
API changes are not detected in this pull request.

Overall makes sense, I do question the jump from a beta to a minor+beta -what's the reason there?

There are feature PRs that are going to be released with this change.


Enhancement: rename git: graph current branch to git: graph

There are two reasons for such a rename.

git: graph is now consistent with git: log to show commits of the current branch.

typing git: gr.. in command palette always select git: graph all branches first. However git: graph current branch is far more frequently used (at least for myself). Renaming it to git: graph makes it appear before git: graph all branches.

Hmm... I get what you're saying here, but 1) it seems like this is an issue of preference and not functionality, and 2) the git: graph command is now less explicit, i.e. it's not clear exactly what it does.  I'm not going to revert this, since this is a small change.  But it's worth having a conversation about what might be a better path going forward.
One option would be to combine both commands into a single command, git: graph, where you are then prompted for Current branch or All branches.  We could tweak the ordering there without losing any explicitness.
Thoughts @randy3k @stoivo?

I am now preparing another PR to combine git: log and git: graph since these two commands have a lot of common code. Perhaps it will be a good chance to revise the naming.
Right now, there are

log
log current file
log by branch
log by author
graph
graph all branches

I guess we should somehow make sure we have the same options for log and graph.

I should also add that git command line also has such a ambiguity, consider git: diff and git: diff branch and git: diff -- file

I have some thoughts, documented in #486.  Let's continue the conversation there!


bump hfhub version

cc @Wauplin

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


View Integration with Backbone

@ellisonbg and I were talking earlier about possibly using Phosphor to replace Backbone's View class. Would that currently be possible, and if so, how would I go about doing that?

A bit more about the questions we have.

It seems like Phosphor Components are View-y type things. This seems to
overlap highly with what backbone Views do. Do these things solve the same
issue?

One of the main ways we use backbone is just for the model sync. Would it
make sense to integrate a phosphor component with backbone by wrapping the
backbone model only in a TS model class (hidding the details of backbone).
In this approach, we would never use backbone views at all.

Thoughts?
On Fri, Jul 17, 2015 at 4:08 PM, svurens<EMAIL_ADDRESS>wrote:

@ellisonbg https://github.com/ellisonbg and I were talking earlier
about possibly using Phosphor to replace Backbone's View class. Would that
currently be possible, and if so, how would I go about doing that?
—
Reply to this email directly or view it on GitHub
https://github.com/phosphorjs/phosphor/issues/45.

--
Brian E. Granger
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

any objection to discussions to the Phosphor Gitter?
https://gitter.im/phosphorjs/phosphor

I am on there now...
On Fri, Jul 17, 2015 at 4:43 PM, S. Chris Colbert<EMAIL_ADDRESS>wrote:

any objection to discussions to the Phosphor Gitter?
https://gitter.im/phosphorjs/phosphor
—
Reply to this email directly or view it on GitHub
https://github.com/phosphorjs/phosphor/issues/45#issuecomment-122453560.

--
Brian E. Granger
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

FYI, the latest version of backbonejs (1.2) which is used in the current development version allows for custom views that don't require jquery. You can check out projects such as D3View and NativeView but the key is that you can use the DOM manipulation program of your choice. Creating a phosphor view would be easy.
In ipywidgets, we made the base widget class a mixins, in order to let users create custom widgets with other implementation of backbone.View. Besides, widget.js and manager.js actually don't require jquery anymore and only perform native DOM api calls - and we don't use View.$el anymore since it is specific to the jquery views... I am actually using a flavor of D3View myself.
IMO, backbonejs and its very large user base enable custom widget authors who may not want to adopt a specific framework, or to learn phosphor. Besides, dropping it would have an enormous migration cost for us.
In https://github.com/ipython/ipywidgets/issues/73, I proposed to add an example of use of NativeView to present how these mixins can be used. I could also add a simple example usind D3View if you like,

FYI, the latest version of backbonejs (1.2) which is used in the current development version allows for custom views that don't require jquery. You can check out projects such as D3View and NativeView but the key is that you can use the DOM manipulation program of your choice. Creating a phosphor view would be easy.
In ipywidgets, we made the base widget class a mixins, in order to let users create custom widgets with other implementation of backbone.View. Besides, widget.js and manager.js actually don't require jquery anymore and only perform native DOM api calls - and we don't use View.$el anymore since it is specific to the jquery views... I am actually using a flavor of D3View myself.
IMO, backbonejs and its very large user base enable custom widget authors who may not want to adopt a specific framework, or to learn phosphor. Besides, dropping it would have an enormous migration cost for us.
In https://github.com/ipython/ipywidgets/issues/73, I proposed to add an example of use of NativeView to present how these mixins can be used. I could also add a simple example using D3View if you like.

closing this since we are conversing offline

Can you post a summary here?
On Fri, Jul 17, 2015, 20:33 S. Chris Colbert<EMAIL_ADDRESS>wrote:

closing this since we are conversing offline
—
Reply to this email directly or view it on GitHub
https://github.com/phosphorjs/phosphor/issues/45#issuecomment-122460642.

It expanded into a larger conversation about phosphor and design. Here were my take aways:
On Models:

We should build model interfaces and implementations of those model interfaces using TypeScript.
Models should have API to return submodels - the ContentManager should be able to return Notebook and TextFile models, the Notebook model should be abel to return Cell models, etc.
Those model objects may be impleented internally using backbone models, Google realtime API or existing jupyter web services.

On Views:
Chris identified 3 main ways of buidling Views:

Phosphor Widgets
Phosphor Compoments (that use the virtual DOM)
"Plain DOM nodes" Because we can't use web-component custom elements, for now we will end up wrapping plain DOM nodes in simple Typescript classes.

However, the problem with the "plain DOM node" approach is that there are a common set of methods and events on these types of objects, such as those related to lifecycle, attaching, detaching, etc. Chris mentioned the possibility of having Phosphor.Widget inherit from a new common base class that does CSS based layout, but that has the base lifecycle methods/events.
We will likely use intermediate ViewModel classes that adapt the View and Model parts.


cache weaviate client

We seem to be creating a weaviate client every time we want to use weaviate. I'm not sure this is needed, we could either just keep a persistent connection open or at least have the client opened and open/close the connection.
The reason is that even creating the client takes about a second and this slows down the conversation.

@ptelang , is this still active work?

This issue was addressed earlier. Unlike earlier, the weaviate client is not created every time when codegate needs to use it.
The HTTP call you mentioned above is a different issue. I am investigating why weaviate needs to make this http call.


:robot: Add recaf.vm

Automated PR from https://github.com/mandiant/VM-Packages/issues/1155 :rocket:

Closes https://github.com/mandiant/VM-Packages/issues/1155


Futures mobile fixes

Description
This PR fixes a number of reported issues with futures on mobile.
Related issue
N/A
Motivation and Context
Conclusion of mobile compatibility development (until new features are added).
How Has This Been Tested?
N/A
Screenshots (if appropriate):

Looks better now! A few comments:

[ ] Top buttons on Markets (Price and Trades) shift layout when switching from either Account or Stats (see screen recording attached). Note #1184 adds more data to the Stats, so maybe merge that one first to avoid fixing the layout shift twice.
[ ] Price button should be moved into the first place and load on default
[ ] When scrolling down on Dashboard and selecting a market (e.g. try with the last one in the list), page jumps to the middle of the market page, not to the top (as would be expected)
Still being discussed: Make Dashboard menu link clickable (link straight to Overview)
Need to set up individual Markets page (similar to Desktop), as currently "Overview" and "Markets" links in navigation point to the same page (Dashboard). This will be tracked in a separate ticket.

https://user-images.githubusercontent.com/548702/181279515-a00654e0-410f-47aa-9c8c-4dec6e8b2fe9.MP4

[ ] Left-align "Oracle/Entry" column data in Open Position table to avoid shifts with higher amounts (see Discord channel comments):

How it is

How it should be

Looks great now, much better with the buttons not jumping around! Re: markets not jumping to top, we'll create a separate ticket for this.
My two last comments:

Skew values >1M create additional rows which makes the Stats table border overlap with the buttons. see screenshot:

Open Position price box is now nicely aligned, however leverage values >=10.00x create an obsolete new line. Maybe expand the left column width a bit so it fits nicely. See screnshot:

From @Marko-roy:

"Orders" Size amount on mobile remove asset name (should be the same as on desktop) to just show the Size value.
"Orders" tab table Type not aligned on mobile, same wit "Short" box, text should be centered and box padding aligned. See screenshot:


Add support for GHES, push events and fix dependenies

It seems it's been a while the project had some ❤, so adding the following changes:

Adding support for GitHub Enterprise
Adding missing dependencies in Dockerfile
Including #9 to make this work on Push Events
Updating README

Would be great if we  could have this merged 🙏

@tdabasinskas since this is not being merged, have you found a good alternative?


Transition dependency management for sync job to poetry

Currently the sync job uses a basic, venv and requirements.txt to manage its dependencies.  This ticket will see the transition to using poetry to manage dependencies for both the code bases in this repository.

[ ] declare dependencies in the pyproject.toml, use same dependencies as the load / extract process
[ ] delete the requirements.txt and ensure dependencies are in the pyproject.toml
[ ] update the docker file used to create the container.
[ ] verify that all is working
[ ] consider creating an integration test that could be run via docker-compose that would create a full local environment, run the sync process and verify that it worked correctly.  This may be a separate ticket

Already started this with feat #10 ( branch feat/10-run-sync-local )


Add comment explaining why cc does not rebuild on env PATH change

For https://github.com/rust-lang/cc-rs/pull/1215#discussion_r1806107565

LGTM but I can't approve PRs here.

Thanks, cc-rs doesn't require approve because I'm the only active maintainer.

Thanks, cc-rs doesn't require approve because I'm the only active maintainer.


CRITICAL: [Track expense] [$250] Remove beta flag for everyone

Problem:
This feature is ready for everyone, let's ship it!
Solution:
Let's:

[x] Enable everyone for the beta
[ ] Rip out all the beta code everywhere

Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~014ddf8901aeb1c9cc
Upwork Job ID:<PHONE_NUMBER>637518336
Last Price Increase: 2024-05-07
Automatic offers:

tienifr | Contributor | 0

Issue OwnerCurrent Issue Owner: @sobitneupane

taking off hold!

Looking for someone to remove all the TrackExpense beta related code in the FE

Thanks for the proposal everyone.
Proposal from @tienifr  looks good to me. They have explained the possible scenarios with the solution.
🎀 👀 🎀 C+ reviewed

@tienifr what's your ETA on this?

Just merged the App PR, now pending deploy

This is done

Ah, re-opening so we can handle payment here

This is ready to be paid out cc @mallenexpensify - there were no regressions, the linked issue is from a different cause

@tienifr can you please accept the job and reply here once you have?
https://www.upwork.com/jobs/~014aedec8d9684b35c
For price, I commented on that last week

There have been questions about what constitutes a job being auto-increased to $500. These jobs are only the ones that have the High Priority label added to them (ie. issue with HIGH or CRITICAL in the title or project status/priority are not auto-increased to $500).

Contributor: @tienifr paid $250 via Upwork
Contributor+: @sobitneupane due $250 via NewDot
Def don't think we need a regression test here

$250 approved for @sobitneupane


Clean up IsLambda* traits

There are a number of ugly things about the current implementation that cause unnecessary code complexity for usage.

[x] Change deps_op functions to just deps
[x] Inline and remove lambda*_deps functions
[ ] Change impls to bound on Fn instead of FnMut

Item 3 is significantly more complicated than it seemed at first.
The same IsLambda* traits are used for both the FRP-safe Sodium APIs and the I/O interop APIs like listen and listen_weak. It seems reasonable to allow Listeners to be FnMut, so differentiating them and still allowing a Lambda<impl FnMut> to have dependencies would require restructuring the traits to separate out the dependency trait and the function calling trait.
There would still need to be multiple traits for each arity of lambda function since one impl block can't allow a Fn or FnMut of any arity because it's unstable and not-recommended to directly rely on the Fn* traits generic structure. As far as I know, it's not possible to use the syntactic-sugar Fn* trait form to be generic over function arity.


Extension stopped working (got some errors while using the extension)

its a problem only on chrome
(loaded extension on edge and it works perfectly)

Fixed https://github.com/sglkc/moegi/releases/tag/1.2.2 it was a dependency issue


Can yabai move a window to the display that is on the left?

On Linux, I used i3 which has a nice way to support multiple displays. The key combination Super+Shift+H moves a window to the left in the tree. Usually, this would just swap the window with one that is further left on the same display. But if the window is already left most on the display, it moves the window over to the next display on the left.
I would like to replicate this behavior with yabai because I've found myself not use my displays on the side as much when I manually have to think about which workspace to send a window to.

If the provided display selectors are not enough you can use the script mentioned in this issue: https://github.com/koekeishiya/yabai/issues/225

As far as focusing goes, yeah, that does seem correct to me.
I noticed that you also mentioned swapping windows in your original question, and that would be something like yabai -m window --swap west || yabai -m window --display west.
They'll be in the next release, yeah. If you don't mind running from the master branch, it is usually very stable, except for when I decide to make breaking changes, but you can just look at the changelog before updating to see what changes have been made.
I don't have a set schedule for when a new release is made. It mostly depends on what changes have been made and if I think some of them are important enough to get out before any additional major changes. I suppose it also depends on how much I think I will be working on the project in the upcoming days/weeks.
If there has been a reasonable amount of changes and I don't think I'll be doing too much in the near future, I usually do a release.

Got it, thanks!

@koekeishiya Can you think of a solution to this?

You can focus the new display first and then set the the insertion point by using yabai -m window last --insert east or query the active space of the target display, retrieve the window_id from last-window and use that to set the insertion point on that space.
Alternatively if you don't mind some jumping around, the absolute simplest way is to simply move the window, follow focus, and then just yabai -m window --warp last.

Thanks! Would last work here? When moving a window to the west screen, it should take the east edge of that screen. When moving to the east screen, it should take the west edge of that screen.

For east you can use first instead of last, but same strategy as mentioned previously.
Sent from my iPhone
On 24 Jun 2020, at 16:51, Danijar Hafner<EMAIL_ADDRESS>wrote:

Thanks! Would last work here? When moving a window to the west screen, it should take the east edge of that screen. When moving to the east screen, it should take the west edge of that screen.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/koekeishiya/yabai/issues/526#issuecomment-648869424, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABPDZV6WT4GNCRX5SHDEATTRYIHGVANCNFSM4NDOPLEQ.

I came here trying to find a way to rotate the focused window between displays AND keeping the focus. End up doing:
WIN_ID=$(yabai -m query --windows --window | jq '.id') && yabai -m window --display recent && yabai -m window --focus $WIN_ID

Maybe someone finds it useful.

You can focus the new display first and then set the the insertion point by using yabai -m window last --insert east or query the active space of the target display, retrieve the window_id from last-window and use that to set the insertion point on that space.
Alternatively if you don't mind some jumping around, the absolute simplest way is to simply move the window, follow focus, and then just yabai -m window --warp last.

First, Yabai is amazing, thank you so much for creating it. I'm not upgrading OSX again until I'm sure Yabai works.
This thread has improved my workflow almost to the point of perfection. One thing is missing, I'm not able to get the "swap across displays" function to work right. For example, ctrl + shift - left  : yabai -m window --swap west || $(yabai -m window --display west; yabai -m display --focus west; yabai -m window last --insert east), the window still moves to the west side of the destination display (instead of inserting on the east side) and I get a strange red box in the east-most window.
If someone can help me figure this out I'll be in nirvana. Thanks.

Here is how I got it working, it could probably be simplified but I couldn't fuss with it any longer.
shift + ctrl - left : WIN_ID=$(yabai -m query --windows --window | jq '.id'); yabai -m window --swap west; [[ ! $? == 0 ]] && (yabai -m display --focus west; yabai -m window last --insert east; yabai -m window --focus $WIN_ID; yabai -m window --display prev; yabai -m window --focus $WIN_ID);
shift + ctrl - right : WIN_ID=$(yabai -m query --windows --window | jq '.id'); yabai -m window --swap east; [[ ! $? == 0 ]] && (yabai -m display --focus east; yabai -m window first --insert west; yabai -m window --focus $WIN_ID; yabai -m window --display next; yabai -m window --focus $WIN_ID);


Fixed #27434: Removed an edge case with model validation

When raising a dictionary ValidationError in Model.clean() for fields which are not part of a particular modelform, Django would raise a ValueError because it couldn't assign those errors to a form field.
This change moves errors from non-existing fields to NON_FIELD_ERRORS.
A better idea might be to check whether the field actually exists on the model and prepend the field's verbose_name to all error message, but I wanted to solicit some feedback first before moving forward with this patch, especially from @loic :-)
Link to related ticket for easier browsing: https://code.djangoproject.com/ticket/27434

Thanks for the comments and the review. I adapted the testcase as suggested.
Regarding dropping errors vs. moving them to NON_FIELD_ERRORS: The problem with dropping messages is that this might lead to full_clean raising no error despite the failing model validation in Model.clean. So simply dropping them without adding an alternative error somewhere else is probably out of the question.

Regarding dropping errors vs. moving them to NON_FIELD_ERRORS: The problem with dropping messages is that this might lead to full_clean raising no error despite the failing model validation in Model.clean. So simply dropping them without adding an alternative error somewhere else is probably out of the question.

There might be cases where you wouldn't want to raise an exception for a specific field if you knew in clean() that the field was excluded. Since clean() doesn't offer such an API and that raising an exception returns immediately from clean(), possibly preventing other exceptions from being raised later in the body of clean() I think it makes more sense to move the error the NON_FIELD_ERRORS as well.

Buildbot, add to whitelist.

I'm on the fence on that one, on one hand the current situation is far from ideal, on the other hand I don't like the proposed loss of metadata: the field name is no longer available and the model's error message may not be intelligible without the context of the field. For example "this field is required" doesn't make sense as a non-field error. And you can't even fix that poor error message at the form layer, since you can't target that error, the field name being gone, and the error code may not be specific enough (e.g. 'invalid' vs 'title_invalid').
Maybe a better approach is to pass exclude as a parameter to Model.clean() - we should be able to do that in a somewhat backwards compatible way with inspect.formatargspec() - then CustomModel.clean() can decide to not raise this field-specific error, or to raise it differently with a message and code that's applicable for NON_FIELD_ERRORS.

Maybe a better approach is to pass exclude as a parameter to Model.clean() - we should be able to do that in a somewhat backwards compatible way with inspect.formatargspec() - then CustomModel.clean(exlude) can decide to not raise this field-specific error, or to raise it differently with a message and code that's applicable for NON_FIELD_ERRORS.

It's too bad it can be done without breaking backward compatibility :)

@loic I mostly agree with all points you've raised, but am not sure what I should do now to move this foward. I also like breaking stuff ;-) , but a change with this effect surely has a higher barrier, and I don't want to put in too much needless work if there's an easier way.
(Btw, I hope everything went well on Sunday!)

Hey @matthiask, I suggested using the inspect module to check it self.clean() accepts an exclude kwarg. If it does, we provide it, otherwise we don't.

Will you continue this @matthiask?

Hi @timgraham, I still intend do finish this, yes.

I rebased the branch on top of master and implemented the suggestion. The patch is much smaller in terms of code now.
Do you think it makes sense to deprecate Model.clean() without an exclude parameter? I'm not sure it's necessary to force everyone to change their clean() method signature, but I'll happily leave the decision to you.

I don't think it would be wise to continue without a deprecation. If we have to add more parameters some time, the possible signatures would grow more complicated over time.

Thanks for the feedback!
I've updated the PR.

@matthiask the alpha is schedule for today or may be tomorrow. It would be great if you could complete it before that and rebased the pr with logical commits

I've already added the missing test referenced above. @timgraham do you have any additional feedback?

I've rebased the patch on top of current master.
I'm not sure how to proceed here. I'm now thinking about simply using and recommending clean_fields(self, exclude) over clean(self) for anyone wanting to customize error messages for different forms, which means a simple documentation patch might be enough for this.
OTOH it's still possible to crash Django with code from the documentation, so that's not very nice (tm), but it's an edge case...
Comments / opinions?

Thanks @auvipy for the review!
I'm not interested in pursuing this further. The changes are too many, and my personal itch has been thoroughly scratched by moving all validation logic to clean_fields() for now.
I've followed my suggestion and added a note to the documentation documenting this problem for posterity.


Add heroku/heroku:24 and heroku/heroku:24-build as multiarch images

This PR will make heroku-24 available as a multi-arch image in Dockerhub. However, heroku-24 is still in development and not recommended for production workloads. heroku-24 will not be made available on the Heroku platform until a later date.
General Changes from heroku-22

heroku/heroku:24 and heroku/heroku:24-build are multi-arch images, supporting linux/amd64 and linux/arm64
ubuntu:24.04 ships with a ubuntu/1000 user by default. The heroku/1000 user is therefore not required, and won't be created.
No *cnb* variants (like heroku/heroku:22-cnb-build) in the heroku-24 line. heroku/heroku:24 and heroku/heroku:24-build are compatible with Cloud Native Buildpacks.

Package changes from heroku-22
We are dropping some of the less popular packages in an effort to reduce the image size. Significant demand could mean we reintroduce packages prior to release.

Updated several packages versions to versions available in ubuntu:24.04 / noble.
Dropped syslinux, which is not available for arm64. A collection of DOS bootloaders is unlikely to be used on the platform.
Dropped libgnutlsxx28, which is not available in noble. There isn't a clear drop-in replacement. However, it's dependencies are still included via other packages.
Dropped mercurial from the -build variant. Heroku's deployment experience is based on git, and most of the tools in our ecosystem are hosted via git. Even mercurial servers can serve git protocols these days.
Dropped bzr / brz from the -build variant. For the same reasons mentioned about mercurial.
Dropped python3-dev from the -build variant.
Dropped ghostscript (and it's dependencies/recommends libgs10, libgs10-dev, and gsfonts). Many languages have native PDF library implementations and/or use other tools like wkhtmltopdf, webkit, convert, and/or pdfkit for their PDF needs. ghostscript isn't as ubiquitous as it once was, and has seen a number of vulnerabilities in recent years too.
Dropped language-pack-en. This generates a locale data for around 20 english variants (like en_AG UTF-8,
en_NZ.UTF-8 UTF-8,en_ZW.UTF-8 UTF-8, etc.). en_US.UTF-8 is now made available via locale-gen instead. The default locale remains unchanged.
Dropped ed, socat, telnet - these are fairly old programs that don't seem to see much use on the platform.

Build and Publish Changes
Docker Desktop can build, store, and retrieve multi-arch images locally. To do so, either enable the containerd image store in Docker Desktop settings and/or enable the docker-container driver with docker buildx create --use.
Linux based docker can build multi-arch images as long as the docker-container driver is enabled with docker buildx create --use. It does not have the ability to store or retrieve multi-arch images locally, though. The only place to store these images is in an image registry. This introduces some challenges to the CI process since it currently verifies packages prior to pushing.
Potentially, the ideal CI solution for this is to build architecture specific images on instances with that architecture, then have another process that creates and pushes the multi-arch manifest list afterwards. However, arm64 GitHub actions runners aren't generally available.
Instead, this PR modifies the CI pipeline. When running tests, images are built for amd64 only, and the package list is generated and checked for amd64. Then, when publishing images, multi-arch images are built and pushed to a private repo, then retagged to public repo tags at the end.

ubuntu:24.04 ships with a ubuntu/1000 user by default. There is no need to create the heroku/1000 user anymore.

I wonder if removing our custom user will resolve:
https://cloud-native.slack.com/archives/C033DV8D9FB/p1705518815253729

Some other potential package candidates to drop:

bzr
python3-dev
socat
telnet
ed

Instead, this PR modifies the CI pipeline. When running tests, images are built for amd64 only, and the package list is generated and checked for amd64. Then, when publishing images, multi-arch images are built and pushed to a private repo, then retagged to public repo tags at the end.

Seems like we'd want to generate/check/test both architectures (when possible and feasible). But for multiarch base images it seems we probably shouldn't include installed-packages.txt files that only reflect installed packages on one of the supported architectures?
The differences are pretty minor, but would it perhaps make sense to generate package lists for both supported architectures (e.g. installed-packages-amd64.txt/installed-packages-arm64.txt) in the heroku-24 and heroku-24-build directories)?

would it perhaps make sense to generate package lists for both supported architectures

@runesoerensen - Yes, makes sense to me. I added a modified version of your suggestion in https://github.com/heroku/base-images/pull/245/commits/b739fbe215c9069e2bd857adc5f22200acf0c41a.

Some other potential package candidates to drop:

bzr
python3-dev
socat
telnet
ed

I think we should keep socat, telnet and ed. They're very basic, bare-bones tools one can use for simple debugging tasks.
Definitely okay with dropping bzr and python3-dev.

Between the RUN --mount) change and the removal of the -cnb variants (which also used multiple RUN statements), the CNB build image has dropped from 7 layers for Heroku-22 to 3 layers for Heroku-24, and similarly the CNB run image from 5 layers to 2 layers! 😄

Eugh so GitHub has published my in progress draft review for some reason, even though I didn't press submit. I presume maybe that was because I left a separate comment as a normal comment? Strange.

I don't see the arm64 build in Docker Hub yet, correct? https://hub.docker.com/r/heroku/heroku/tags

@joshwlewis It looks like the ARM64 build isn't being uploaded to the .nightly tag variants, only the linux/amd64 variant:
https://hub.docker.com/repository/docker/heroku/heroku/tags?page=1&ordering=last_updated&name=24
eg compare:

...with the upstream ubuntu image:

The above issue has now been resolved by #252 + #253:
https://hub.docker.com/repository/docker/heroku/heroku/tags?page=1&ordering=last_updated&name=24
(Though do bear in mind that Ubuntu 24.04 hasn't even reached beta yet, so the Heroku-24 images are extremely experimental, and we also plan on removing some packages over the coming weeks to reduce image size, so expect breaking changes at any point before Heroku-24 GA.)

I noticed that after this merged, the CI build/publish times increased from ~5 mins to ~40 mins:
https://github.com/heroku/base-images/actions/workflows/ci.yml?query=branch%3Amain
I presume this is due to two things:

We're now building two architectures in series (ie: double the work)
For the ARM64 build, Docker's QEMU emulation is being used since it's an AMD64 GHA runner, which makes the build much slower (now that we're using Rosetta support locally on macOS I'd forgotten how much slower QEMU was)

ie: This is expected/unavoidable for now, until we switch to GitHub Actions' upcoming ARM64 runners and build the architectures in parallel across multiple jobs.


Migrate CircleCI -> Github Actions

The test suite runs on CircleCI right now, but we'd like to switch to Github Actions.

Reference for migration https://docs.github.com/en/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions


9304: increased failing token range to fix flaky cqlsh copy tests on Jenkins

This should fix [test_copy_to_with_more_failures_than_max_attempts] (http://cassci.datastax.com/job/cassandra-2.2_dtest/403/testReport/cqlsh_tests.cqlsh_copy_tests/CqlshCopyTest/test_copy_to_with_more_failures_than_max_attempts) and [test_copy_to_with_child_process_crashing] (http://cassci.datastax.com/job/cassandra-2.2_dtest/lastCompletedBuild/testReport/cqlsh_tests.cqlsh_copy_tests/CqlshCopyTest/test_copy_to_with_child_process_crashing).

+1


Drop Atomic Design structure

I don't feel any benefit from current directory structure.
We don't have any designer specialist, all contributors can update codes directly.
Utils will be growing up because no directory exists for common and functional codes.
How about change it? 🤔
🇯🇵  https://zenn.dev/brachio_takumi/articles/2ab9ef9fbe4159

Nice issue. I like bullet-proof react directory structure than current one.
Do you have another suggestions? If no, let's start to refactoring!

Agreed this.
https://react-file-structure.surge.sh/
https://mobile.twitter.com/dan_abramov/status/1027248875072114689

It is a guideline though. It means literally “start by putting everything in one file; when it feels like it’s annoying, start splitting them up; what THAT gets annoying, maybe add some folders”.

We should start flat structure as possible.


Checkpoint in Google drive

Hi,
it is possible to put the checjpoint files in google drive?
I'm from Portugal, and I can't log in properly to Baidu because I can't enter my cell phone number to activate the account.
I imagine a lot of people will have similar issues.

I have uploaded checkpoints to Google Drive. You can download from https://drive.google.com/drive/folders/1kGdRf4BAY5rGf4zMGtPd4_xxjmQvnBTt?usp=drive_link


Bash script out steps 18-20 of the Redis EC2 instance setup

Bash script out step 18 - 20 of https://github.com/GoTeamEpsilon/OpenEMR-AWS-Guide/blob/master/Other/MRV_working_guide.MD#redis-sessions
It would be great if the user could just copy and execute a bash script. The tricky part in doing this is using Linux tooling (hint: grek, sed, sed) to find the bind statement and comment it out.

@robertogagliotta this would be a great first task for you to work on! Hope you are comfortable with Bash!

Brainstorming Session Open

Roberto,
Are you familiar with grep/sed/awk?
Thanks,
Matthew

Yes, I was cobol programmer on Unix systems for 5 years back on 2001

I have using $ terminal on my ubuntu servers for the last 5 yrs

Matthew.
Slacks said thath my email address<EMAIL_ADDRESS>does not belong to any team. I need a invitation:
Hello! You're receiving this email because your email address was entered into slack.com/get-started, under "Join an existing team." We searched for Slack teams you've already joined or are allowed to join using<EMAIL_ADDRESS>but we couldn’t find any teams for that address.
If you're looking for a specific team, you can try contacting your Team Administrator for an invitation

In 2001 you probably were on High School. :)

Yup, ha.

Team Administrator for an invitation

I will try again.

I know you invited me before. I did create the account and test it ok. After that it did not work.
I got a new slack account. thanks

I completed steps 1 - 20 ;
Pseudocode for the redish_install.sh:
#!/bin/bash
clear
sudo apt-get update -y &&
sudo vi /etc/redis/redis.conf
comment <IP_ADDRESS>
sudo service redis-server restart
IF THE USER WAS ABLE TO DO STEPS 1 - 16, STEPS 17-19 WILL BE CAKE ....
What do you think ??

Cool. Maybe try sed -i -- 's/bind<IP_ADDRESS>/#bind <IP_ADDRESS>/g' /etc/redis/redis.conf ?

My point was that this script will not help to the purpose. sorry Matthew I will not spend more time on this.
Sent from my iPhone

On May 13, 2017, at 10:16 PM, Matthew Vita<EMAIL_ADDRESS>wrote:
Cool. Maybe try sed -i -- 's/bind127.e0.0.1/#bind <IP_ADDRESS>/g' /etc/redis/redis.conf ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I see what you mean. It's quite simple for the user.
Thanks

Hi Matthew
Due to my tight schedule I can not continue being part of the Epsilon Team
at this time. I wish you all the best with your group.
Roberto
On Sun, May 14, 2017 at 2:54 AM, Matthew Vita<EMAIL_ADDRESS>wrote:

Closed #30 https://github.com/GoTeamEpsilon/OpenEMR-AWS-Guide/issues/30.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoTeamEpsilon/OpenEMR-AWS-Guide/issues/30#event-1081236704,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFBzEPuP4-_aklHrkEekm1jnvUBxXA0tks5r5s9kgaJpZM4NaGKZ
.

@robertogagliotta, I understand. Thanks anyways.


MAINT: sparse: add missing dict methods to DOK and tests

A few dict methods are not being overloaded by the DOK sparse format. Most are likely due to new features added to dict in recent years. But others such as pop and fromkeys have recently been missed by users. (see Issue #20156 which this fixes and dok.array.fromkeys which was recently fixed in #20154).
This PR adds all the missing methods from dict (which otherwise call dict.method() on the sparse dok class and that often doesn't work).  The methods are:
pop()
__reversed__
__or__, __ror__, __ior__,

It also adds tests of all the dict methods to sparse/tests/test_dok.py.  Those tests are not meant to be exhaustive, but check that the methods exist and work for typical cases.
Fixes #20156
This can be merged before or after the other open PR for DOK format:  #19715 since the rebase/merge is simple. That PR is ready to merge with 2 approvals and now rebased on main. This one is fairly short so maybe quick to review.  When either is merged, I will update the other.

Branching is imminent, so I've bumped the milestone. If you and CJ tell me this needs to be in 1.13.0 after I branch, we'll deal with it then.

Hi @dschult
The pop implementation differs from the dict one, in can the user don't provide default value, in your case it return None instead of raising an exception.

Rats -- I understand. I think a cleaner way to handle that case is:
    def pop(*args):
        return self._dict.pop(*args)

Do you see anything not working with that code?
I'll also add a test to make sure that is working. Thanks!

Yeah, it's fine. I think you have to add self in the  function parameters.


AlphabeticalImports is not working as expected.

This is how my imports are set up in quicksand right now DeleteOldSoftDeletes.php:
use DateInterval;
use DateTime;
use Exception;
use Illuminate\Config\Repository as Config;
use Illuminate\Console\Command;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;

Tlint should squawk about Log and DB being out of alphabetical order, but running tlint against this file does not catch it.

This is working as intended (And should probably be explained along with many others, https://github.com/tightenco/tlint/issues/106)
It only squaks at the first segment alphabetical ordering, as that is what is required to make the code:
A) Aesthetically pleasing
B) Quick to find something in a top level namespace
C) It was super annoying/pedantic to have to sit and micro-swap stuff like Log and DB (especially when the lint only triggers on a single line, for simplicities sake, and that line is at the top of the imports block)
I'm open to discussion about changing it, but I believe this was the initial justification for the behavior.

In my opinion it should be full order if possible.

(My justification for this is: It should be predictable to find anything relative to anything, and full alpha is the most predictable.)

ok @mattstauffer (PRs welcome on this Jose, or I will get to it in my list 😄)