Object Oriented in Manim Results in AttributeError: 'Object' object has no attribute 'foreground_mobjects'

Description of bug / unexpected behavior
I am trying to create a Sudoku grid class in Manim. If you're unfamiliar with Sudoku grids, they're a grid of boxes (9 of them), and each of them are a grid of cells (9 of them again). A perfect opportunity for OO if there ever was one.
So I have three classes,

SudokuGrid
Boxes
Cells

Which necessitates overriding __init__ to have member variables in their classes.
And whenever you override __init__ manim just falls apart with the error in the subject line.
No attempt by me to move subsets of the code between __init__ and construct has allowed me to overcome this issue.
See below for sample code and how to reproduce the issue.
Expected behavior
This may be my lack of imagination, but I expect to be able to create OO objects that allow me to abstract complexity rather than have to manage all 91 boxes of a Sudoku grid individually every time I wish to animate one. Grouping them into a vgroup works of course if you only have one grid, but how do I then address the cells and populate their text or add more complex animations?
How to reproduce the issue
Code for reproducing the problem
class SudokuGrid(Scene):
	def __init__(self, gridStrokeWidth = 10, gridStrokeColor = WHITE, \
		boxStrokeWidth = 5, boxStrokeColor = WHITE, \
		cellStrokeWidth = 0.7, cellStrokeColor = WHITE, cellTextColor = WHITE):

		self.Border = Square(gridStrokeWidth, color = gridStrokeColor).scale(3)
		self.add(self.Border)
		self.Boxes = []
		for i in range(1, 4):
			for j in range(1, 4):
				x = i * 3 + j
				self.Boxes[x] = Box(boxStrokeWidth = boxStrokeWidth, \
					boxStrokeColor = boxStrokeColor, \
					cellStrokeWidth = cellStrokeWidth, \
					cellStrokeColor = cellStrokeColor, \
					cellTextColor = cellTextColor)
				self.Boxes[x].shift([(j -2) * 2, (i -2) * 2, 0])

	def construct(self):
		self.add(self.Border)
		for i in range(1, 4):
			for j in range(1, 4):
				x = i * 3 + j
				self.add(self.Boxes[x])

Logs
Terminal output
File [~/.../.venv/lib/python3.11/site-packages/manim/scene/scene.py:223](https://file+.vscode-resource.vscode-cdn.net/Users/afifim/SudokuSleuth/~/SudokuSleuth/.venv/lib/python3.11/site-packages/manim/scene/scene.py:223), in Scene.render(self, preview)
    221 self.setup()
    222 try:
...
--> 468     mobjects = [*mobjects, *self.foreground_mobjects]
    469     self.restructure_mobjects(to_remove=mobjects)
    470     self.mobjects += mobjects

AttributeError: 'SudokuGrid' object has no attribute 'foreground_mobjects'

System specifications
System Details

OS: macOS 13.4.1 (Ventura)
RAM: 32 GBs
Python version (python/py/python3 --version): Python 3.11.4
Installed modules (provide output from pip list):

Package                Version
---------------------- ----------
altgraph               0.17.2
certifi                2022.12.7
charset-normalizer     2.1.1
click                  8.1.4
click-default-group    1.2.2
cloup                  0.13.1
colour                 0.1.5
Cython                 0.29.36
decorator              5.1.1
filelock               3.9.0
future                 0.18.2
glcontext              2.3.7
huggingface-hub        0.11.1
idna                   3.4
isosurfaces            0.1.0
macholib               1.15.2
manim                  0.17.3
ManimPango             0.4.3
mapbox-earcut          1.0.1
markdown-it-py         3.0.0
mdurl                  0.1.2
moderngl               5.8.2
moderngl-window        2.4.4
multipledispatch       1.0.0
networkx               2.8.8
numpy                  1.24.1
packaging              22.0
Pillow                 9.5.0
pip                    21.2.4
pycairo                1.24.0
pydub                  0.25.1
pyglet                 2.0.8
Pygments               2.15.1
pyobjc-core            9.2
pyobjc-framework-Cocoa 9.2
pyrr                   0.10.3
PyYAML                 6.0
regex                  2022.10.31
requests               2.28.1
rich                   13.4.2
scipy                  1.11.1
screeninfo             0.8.1
setuptools             58.0.4
six                    1.15.0
skia-pathops           0.7.4
srt                    3.5.3
svgelements            1.9.5
tokenizers             0.13.2
tqdm                   4.64.1
transformers           4.25.1
typing_extensions      4.4.0
urllib3                1.26.13
watchdog               2.3.1
wheel                  0.37.0

FFMPEG
Output of ffmpeg -version:
ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
built with Apple clang version 14.0.3 (clang-14<IP_ADDRESS>.1)
configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
libavutil      58.  2.100 / 58.  2.100
libavcodec     60.  3.100 / 60.  3.100
libavformat    60.  3.100 / 60.  3.100
libavdevice    60.  1.100 / 60.  1.100
libavfilter     9.  3.100 /  9.  3.100
libswscale      7.  1.100 /  7.  1.100
libswresample   4. 10.100 /  4. 10.100
libpostproc    57.  1.100 / 57.  1.100

The better (and correct) way would probably to create a new object (based on Matrix or VMobject) and use it in a regular scene than creating a whole new Scene-type object.
Since Scene is the object in your code which does all the rendering magic, you will easily break important stuff.
Above all you should always call the super.__init__ of your inherited object and you should also make sure that your __init__ accepts all parameters with which the parent object would be called. See the documentation for Scene and the corresponding source code of the original Scene's __init__
https://docs.manim.community/en/stable/reference/manim.scene.scene.Scene.html

The better (and correct) way would probably to create a new object (based on Matrix or VMobject) and use it in a regular scene than creating a whole new Scene-type object.

I wanted to add to this to agree. In software, you have to consider composition vs inheritance. Does it makes sense to say that a "SudokuGrid is a Scene"? If not, then inheritance is not the way to go.
Make an object, that encapsulates what a SudokuGrid is, and write methods that allow you to interact with it. Eg, maybe a method to take a coordinate to update a particular entry in the grid. Then, you can use that object in any scene. It is more flexible, and you will save yourself rewriting a whole lot of code :)

Thank you both, immensely helpful comments.
In hindsight it's obvious that I've mangled the parent object given I am not passing any of the parameters to super(), so unsurprisingly it's calling me out (just too used to statically checked languages compared to Python).
I did consider using composition over inheritance, you're correct in that it may be the way to go.
Will repost my revised working code once I have it in case it helps others.
Thanks again.


incorrect width on displayArea when showing scrollbar

in our usecase we have a 2 column layout, where an embedded powerbi report is displayed with fitToWidth. it works well, until the report needs to scroll. the scroll overflow is applied within the embed (iframe) on the displayAreaContainer. so this is completely out of our control.
in the example above, the iframe itself is 800pxwide. on overflow, the displayArea element in the iframe is suddenly only 773pxwide (applied via inline styles, by the embed code). which leads to this massive gap.
i would have looked into the source, to find and propose a solution myself, but the embed code is apparently closed source and i cant create issues on the core js library.

Thank you for reporting this issue. This is an old issue, is it still relevant?

I've left the related project in the meantime, so I have no way of checking. it was an issue till the end, but has no prio for my anymore. thank you

Thank you for reporting this issue. We closed the issue because it's old.


New Media query breakpoint xxs (320px)

New Media query breakpoint xxs (320px) Since the breakpoints sm (768px) is too big for mobiles.
Example: .col-xxs-1 ~ .col-xxs-12

Approximate duplicate of https://github.com/twbs/bootstrap/issues/10203#issuecomment-23836739 , which is being addressed in Bootstrap v4.


Private Repo Source Build

Would it be easy to add private repo authentication to the build process? For example, adding a "dgo get" command that creates a docker data only container to pull down from custom sources

Hey @NerdsvilleCEO , I've moved everything to a new project here: https://github.com/treeder/dj

Sweet! Does this one work with private repositories?


Component styles not added to cssStack

I have the following issue:
If a component is rendered conditionally and/or not initially, all its related css is not added to the cssStack.
<script>
  import Button from '../Button/Button.svelte'
  let foo
</script>

<div>
  {#if foo}
    <Button>Click</Button>
  {/if}
</div>

The same issue is true when using the following loop
<script>
  import Button from '../Button/Button.svelte'
  let items
</script>

{#each items as item}
  <Button>Click</Button>
{/each}

The components html is rendered fine. Also the classes are in place and have unique hash. And the parent component has hydrate-client={{ }} set.
How can I make sure the css for conditionally rendered components will be added to the cssStack?

@Hornebom Hmm, great question.
The core problem is that the CSS isn't getting emitted during the SSR version of the Svelte component.  The Svelte compiler is trying to be helpful here removing any unwanted CSS.
This is likely happening because the SSR component is missing props for foo or items.
Have you tried setting hydrate-client={{foo}} or hydrate-client={{items}}?
This should allow the SSR version to have the same data the client will be mounted with and you can avoid this issue.
If you need classes set that aren't going to be executed on the SSR component, I recommend you look at using Svelte's :global().
Try the hydrate option first and let me know if you get the results you were expecting.

@nickreese Thanks for that tip

The core problem is that the CSS isn't getting emitted during the SSR version of the Svelte component. The Svelte compiler is trying to be helpful here removing any unwanted CSS.

A bit too helpful 😅
I solved it for now by setting svelte compile css option to true. As documented here https://svelte.dev/docs#svelte_compile
Probably I have to deal with the performance drawbacks for now


list packages command fails in version 0.35.0

The following command fails since upgrading to cloudsmith-cli version 0.35.0:
$ cloudsmith list packages --output-format json ORG/REPO
Getting list of packages ... OK
Failed to convert to JSON: Object of type datetime is not JSON serializable

The same command is successful with cloudsmith-cli version 0.34.0.
I re-ran with -v and -d which resulted in the following log line:
2022-12-14 16:20:56,608 DEBUG https://api.cloudsmith.io:443 "GET /v1/packages/ORG/REPO/?page=1&page_size=30 HTTP/1.1" 200 None

So I guess it's still using the v1 API and failing since it now only supports the v2 API.

Thanks for the report @mikewallace1979, the team is looking at this right now

Hey @mikewallace1979. This issue should now be fixed in v0.35.1. Thanks for letting us know!

No problem - can confirm it is indeed fixed!


Resolves #455 Add support for mac os x 10.10

The lastest chef omnibus installer supports mac os 10.10.

Modified the omnibus darwin distro regex to add support for 10.6 - 10.10

Thanks!


Enable two more flake8 rules

Description
This PR adds two more flake8 rules which run with the GitHub Super-Linter.
The codebase was already following this style so there are no code changes.
https://www.flake8rules.com/
https://flake8.pycqa.org/en/latest/

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[X] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[X] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[ ] Minor
[X] Trivial

Screenshots (if appropriate):
How Has This Been Tested?

Can check locally with:
flake8 --select=E223,E224,E242,E273,E274,E742,E743,E901,E902,W291,W292,W293,W391 .

I think the action passing means it is ok


GLFW examples are not functional on macOS.

We only build the examples on Linux by default.
The GLFW examples use OpenGL ES and we disable that on macOS because Metal is recommended API.
The instructions with the example make no mention of the fact that they will not work on macOS.

The least we can do right now is to update the instructions so folks aren't confused about the example not working on macOS. We could probably also have a trivial example working with Metal.


Include example with autopublish removed

These examples are great, however don't really match real world scenarios where you would remove autopublish.

IMHO these could be the starting point for bigger projects, and every project starts with autopublish included.
...usually after a bit of prototyping work, when you get to the point about security and subscriptions, you remove autopublish and a new design phase starts.
So I think it's fine to have autopublish included since these are boilerplates and not complete projects.


TST: Fix flaky test_lgmres

This test is fairly flaky. I'd love to know why.
It uses fixed random seed but internally I assume there's some variance on the quality of the solution.
Not sure why the check for norm > 4e-4 exists (we are verifying lgmres didn't perform well???)

@rgommers straightforward PR that would be nice to get in quickly.

Not sure why the check for norm > 4e-4 exists (we are verifying lgmres didn't perform well???)

Hmm yes that's very odd. I assume that depending on the random numbers generated, norm can be closer to zero. I'll merge this, but it would make sense in a follow-up to see if the test can be changed to < some_number.

Thanks for tracking that flakyness down @sethtroisi


Issue:

On some projects coc-psalm works without an issue. However, on other projects, this error is shown right after the file is opened:
[coc.nvim]: UnhandledRejection: Cannot call write after a stream was destroyed
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
    at new NodeError (node:internal/errors:371:5)
    at _write (node:internal/streams/writable:321:11)
    at Socket.Writable.write (node:internal/streams/writable:334:10)
    at /home/peterbabic/.vim/plugged/coc.nvim/build/index.js:34:3107
    at new Promise (<anonymous>)
    at qM.write (/home/peterbabic/.vim/plugged/coc.nvim/build/index.js:34:3028)
    at HC.doWrite (/home/peterbabic/.vim/plugged/coc.nvim/build/index.js:35:1698)
    at /home/peterbabic/.vim/plugged/coc.nvim/build/index.js:35:1597

I have never encountered this error in my environment, but maybe it happens in large projects. Or it could be that the psalm plugin is affecting it.
Is there a project repository or something that can reproduce this problem?

It is unfortunately not a public repository. We can close with the agreement that if I gather more details, I'll fill them in and reopen. Agree?


Bugfix/785 no error when same command name used

Motivation
No error is thrown when same command name or child command name is used.
Partially Addresses #785 (for v1 only)

Changes

Added some validation functionality to Run in cli/app.go which loops through a.Commands and a.Commands[i].Subcommands to ensure that there are no duplicate Names.

Testing

TestDuplicateCommandName simulates a scenario where an instance of cli.App is created which has duplicates in its list of Commands. The test case ensures that this scenario results in an error and ensures that the error received matches with what is expected.
TestDuplicateSubcommandName is very similar to the above but instead of simulating a scenario with duplicate Commands Names it simulates a scenario with duplicate Subcommand Names.

Reviewer Guidelines
This is my first open source pull request :)

Before I can really dive into this PR, I would like to see that the added code has 100% code coverage.
We can't calculate that at the moment, due to https://github.com/urfave/cli/pull/986. So you may want to give a hand there.

It looks like https://github.com/urfave/cli/pull/986 is stalled, so I'm going to look into this PR now 👀

@lynncyrin thanks for the review :) I will check out the suggestions and comments soon. I'm already learning so much from the open source community!

Meta comment: this PR is for v1, and we will almost certainly want to create an identical PR for v2

I think the PR is ready for a re-review but I need help to fine tune this error message: https://github.com/urfave/cli/pull/984/files#r362062079

^^ reminder poke!

@lynncyrin thanks for the reminder! I will work on it ASAP. Most probably this weekend 🙏

@ruzaikr +1 reminder ping!

Guys pls give me some more time. I’m having some personal issues going on at the moment. I will seriously set aside some time for this within the next 10 days.


JSON serialization return type warning under PHP 8.1

When starting to test on the 8.1 alpha builds, I encountered the following deprecation warnings from this library:
PHP Deprecated:  Declaration of Money\Currency::jsonSerialize() should be compatible with JsonSerializable::jsonSerialize(): mixed in /var/www/html/vendor/moneyphp/money/src/Currency.php on line 86
PHP Deprecated:  Declaration of Money\Money::jsonSerialize() should be compatible with JsonSerializable::jsonSerialize(): mixed in /var/www/html/vendor/moneyphp/money/src/Money.php on line 521

I'm currently still on 3.x, but it looks like the issue is present on 4.x and HEAD.
It looks like adding native return types (replacing the docblock annotations) fixes the issue, and as the two classes are declared final I don't think it should create any BC issues.
Happy to send a PR to fix if you'd like - let me know!

Reopen when 8.1 is out of the door and issue still there. We will not create fixes for alpha releases of PHP.

Will do :)

@frederikbosch Hi, it is still the same for the PHP 8.1RC6, which is the last pre-release version.

@Firehed still interested in submitting the PR? :)

I've confirmed this to also be present under the GA release of PHP 8.1.0.

I'm more than happy to create a PR to fix this, but I see at least one open that's trying to do the same thing. Can any maintainer comment on how they'd like to proceed?

PR #670 is the way forward. At the moment incompatible dependencies - phpspec in particular - are blocking the merge of this PR now.

PR #670 is the way forward. At the moment incompatible dependencies - phpspec in particular - are blocking the merge of this PR now.

hey @frederikbosch I also opened #675, could you please have a look? I think dev dependencies don't need to block this as it's quite a small change

Support is there, see version 4.0.3. Thanks for the help.


WIP: Route eating prototype

Here my final candidate for route drawing improvements inclusive route eating. @boldtrn let me know if you if you agree with this implementation. After that I will clean up the code and add tests and documentation.
I marked the duplicated and outdated NavigationMapRoute class as deprecated.
Followed by them I removed MapRouteLine and extracted the logic to separate classes:
MapLibrePrimaryRouteDrawer --> Creates required layers and generates the geo source for the primary route. Here the route-eating feature is included.
MapLibreCongestionPrimaryRouteDrawer --> Creates required layers and generates the geo source for the primary route congestion segments. This will also supporting the route eating feature.
MapLibreAlternativeRouteDrawer --> All (other) alternative routes are drawn by this class.
MapLibreCongestionAlternativeRouteDrawer --> Congestion segments for all (other) alternative routes are drawn by this class.
MapLibreRouteArrow (Already existing class) --> Draws arrows for the next maneuver
MapLibreWayPointDrawer --> Draws the waypoints
All drawers are delegated by the NavigationMapRoute as it was before.
The drawer components can now injected in the constructor. This allows all users to set custom implementations for route drawing. If the fields are NULL, we use the MapLibre default drawers.
If you agree with this implementation I will continue with the tasks around this implementation. These things to do are:

[ ] JavaDoc
[ ] Add, update and fix tests
[ ] Maybe adjust naming
[ ] Validate and improve class & function scopes
[ ] Improve congestion performance
[ ] Check & solve open code-todos

The congestion logic needs also some performance improvements, while it's a bit lagging. If you use the MapLibrePrimaryRouteDrawer (without congestion) it works well on my tests. Additionally I tried to move some route logic in a background task, but the thread creation seems to took longer than the calculation itself. I not 100% sure how the native line drawing is working, but maybe here is more potential to improve the performance. Also the FPS throttling for (location puck and route eating) is only used on full navigation UI implementation. Here we can add same logic for the custom implementation. The route eating is disabled by default for now.

Is route eating the official name for this? 🤔

For example nearest point on line can be quite costly for larger geometries.

I changed now the logic. The route is prepared and calculated on setRoute. This will reduce the calculations on updateRouteProgress. Only the animated path needs to be calculated, and the current step needs splitted into two features.
This works very well for the MapLibrePrimaryRouteDrawer (without congestion). And okay working for long routes. Only the setRoute hangs on initial preparements, but I think, we can outsource to a background task.
The congestion drawing also works, but is still lagging a little bit. But these congestion states are a lot of small segments to draw.. there are potential to improve here much more.

I would suggest now, that I clean up the code, add missing things like documentation and tests. And try again to give more performance to the drawing logic.
Then I would expect that we can merge this into main. The route eating is disabled by default, and the users can test and decide by them self if they want to use this feature. Maybe some other developer has good ideas for more improvements later.
Any objections?

Fine by me, thanks for working on this. The only important thing right now from point of view is, that we don't create performance issues for non route-eating users.

We are currently converting the core module (libandroid-navigation) to Kotlin in PR #127. The changes in this route-eating PR affecting more the UI part.
After this is done, I will thinking about how to continue with this feature.
For me are two options a good way:

Solve conflicts and finish this PR
Re-create this logic with using Kotlin as code and create a new PR. This allows us, to make a smarter and also performance improved logic. Additional I have thought about some improvements that not included in this PR yet.

I will continue here, the next weeks. Stay tuned. Or remind me again, if you feel it takes too long 😄


Simplify variable descriptions in api definition

Is there any way to simplify this output?
"outputs": {
    "format": "JSON (Javascript Serialized Object Notion) pretty printed and indented",
    "content_type": "application/json; charset=utf-8"
},
"inputs": {
    "number": {
        "type": "int(x=0) -> integer\nint(x, base=10) -> integer\n\nConvert a number or string to an integer, or return 0 if no arguments\nare given.  If x is a number, return x.__int__().  For floating point\nnumbers, this truncates towards zero.\n\nIf x is not a number or if base is given, then x must be a string,\nbytes, or bytearray instance representing an integer literal in the\ngiven base.  The literal can be preceded by '+' or '-' and be surrounded\nby whitespace.  The base defaults to 10.  Valid bases are 0 and 2-36.\nBase 0 means to interpret the base from the string as an integer literal.\n>>> int('0b100', base=0)\n4"
    },
    "source": {
        "type": "Basic text / string value"
    }
}

Something like this:
"outputs": {
    "format": "JSON",
    "content_type": "application/json; charset=utf-8"
},
"inputs": {
    "number": {
        "type": "int"
    },
    "source": {
        "type": "string"
    }
}

See "Extending and creating new hug types" in Type annotations in hug and maybe take a look in the types source for more examples.
If you just want to modify the docs

If you simply want to perform additional conversion after a base type is finished, or modify its documentation, the most succinct way is the hug.type decorator:

import hug

@hug.type(extend=hug.types.number)
def the_answer(value):
    """My new documentation"""
    if value != 42:
        raise ValueError('Value is not the answer to everything.')


vendor creates files owned by root

This is an awesome tool!  Thanks for building it.
I noticed that when I run docker run --rm -v $PWD:/myApp -w /myApp treeder/go vendor it creates a directory for vendor'd assets that is owned by root and have 777 permissions - similarly, built applications are owned by root and are 777.  Shouldn't those be owned by whichever user is using the docker tool?  i.e. I'm running as a normal user who's been added to the docker group - so I would expect those resulting files to have the same permissions as the files I created to be used with the tool.
$ ls -l
total 6256
-rwxrwxrwx 1 root           root           6397008 Aug 30 06:57 myApp
-rw-rw-r-- 1 funnylookinhat funnylookinhat     337 Aug 30 06:55 myApp.go
drwxrwxrwx 4 root           root              4096 Aug 30 06:55 vendor

I would have expected this:
$ ls -l
total 6256
-rwxrwxr-x 1 funnylookinhat funnylookinhat     6397008 Aug 30 06:57 myApp
-rw-rw-r-- 1 funnylookinhat funnylookinhat     337 Aug 30 06:55 myApp.go
drwxrwxr-x 4 funnylookinhat funnylookinhat    4096 Aug 30 06:55 vendor

Might seem trivial - but in my experience, permissions should never be taken for granted. :)

Thanks!  Glad you like it.
Unfortunately Docker runs as root so it creates the new files as the root user. I chmod them to make them accessible to everyone before returning. It would be nice to keep the same user, but not sure how to do that since inside the container you don't know who it is.

Yeah my intermittent digging hasn't been able to find a way to get around this either.  Thanks for the help!


Docs: Fix default values

What this PR does / Why we need it
The default value was on the wrong row.
Which issue(s) this PR fixes
N/A

CC @micnncim

Thanks!


[DPE-1676] Allow scale down to 0 nodes

Issue
This PR implements DPE-1676 - namely, this PR implements:

removal of blocking safeguards when scale-down to 0 nodes
improvement of locking logic on scale-down

@WRFitch - yes, those tests must run against a healthy cluster (+1 node)


Avoid passing RUBYOPT changes in with_clean_env block.

Restoring the original ENV generally restored the RUBYOPT changes, but certain
use cases leak through. This commit ensures that the ENV is truely clean by
always checking for RUBYOPT changes and zapping them if they do exist.
This commit fixes #1604 (second attempt)

Looks good to me.

Merged this in as 7a8ce329a9cb3774e88e950210f3e0f1700aee9b, and it will be part of the next 1.1 release candidate. Thanks!


Remove default "clock" "reset" in Firrtl emission of they aren't used

I don't want to have dangling ports in the generated Firrtl.

Isn't that a Chisel problem (hence solved by using RawModule instead of Module)?

Oh does that exist now? Not quite following the discussion.

I've only heard about it; I hoped you'd know more than me :)

This is a chisel issue


Initial Specification

Added Requirements from Good Health Pass Blueprint as initial spec filler
Embedded initial swagger from https://app.swaggerhub.com/apis/darrellodonnell/GHP.TrustRegistry/0.1.0#/ using https://github.com/bharel/mkdocs-render-swagger-plugin... a total win!
added github workflow to deploy to github pages

Even a workflow added!


ios 10 issue with "rights"

On ios 10, if you use the deviceinfo nuget and publish your app on app store, you must add specific entries in info.plist to explain to Apple why you use features like bluetooth and camera. Even if you don't use them. Because the acr library uses them and full linking does not throw this part of code away.
Full linking should be able to find out that this code is not used by the app. So we should be able to publish an app using this nuget without having to add fake entries to info.plist, as some day in the future the submission might be refused by apple.
Another solution would be to split the nuget in pieces.

So I have released with this package before with Apple saying anything.  Though these methods have proved utterly useless so I'll think about removing them in the near future

Nice !


keyboardAppearance prop not working

The keyboardAppearance prop from TextInput doesn't appear to be working - trying to set it as dark and the keyboard is still showing as light.
              <CurrencyInput
                returnKeyType='done'
                value={currencyVal}
                onChangeValue={(val) => {
                  console.log(val);
                }}
                maxLength={8}
                delimiter=','
                minValue={0}
                precision={0}
                prefix='£'
                keyboardAppearance='dark'
              />

This library does nothing with this keyboardAppearance. Show me some evidence that the problem is here or I'll be closing the issue

Perhaps this shouldn't be the case, but in VSCode it seems to expect that this prop can be passed - I assumed it would then just be passed down to the TextInput component used within the CurrencyInput component

https://reactnative.dev/docs/textinput#keyboardappearance-ios

So even assuming that, you still opened a issue here... I'm closing this issue until any prove is shown


Job scheduling via PyFluent

For job scheduler environments we can implement a capability where launch_fluent() automatically spins up Fluent (in distributed parallel) using the requested/allocated cluster resources.

First step is to introduce the module that can parse the run time environment for the machine list and core counts to pass to Fluent.

It's not quite done.

This is done.  If you submit a PyFluent run into a scheduler environment the machines and cores are automatically extracted to launch fluent within the scheduler environment.
Note that this feature does not cover interactive use of Fluent in a scheduler environment nor does it include starting Fluent within a scheduler environment from PyFluent (interactively or non-interactively).


[FEATURE] Add Search ability

Expected Behavior
There should be search functionality in application

Possible Solution

[x] Display seach input on the top.
[x] Update grid based on search results.

Detailed Description
As a user, I want to be able to search application. Search should work based on Name or URL.

Done


AI Agent (Multi Agent)

https://github.com/opea-project/GenAIComps/pull/480
single agent
multiagent is scheduled for v1.0

added multi-agent examples https://github.com/opea-project/GenAIExamples/tree/main/AgentQnA


Remove unclear comment for makeSpoofClient() arg

This patch makes a tiny change to remove unclear comment for makeSpoofClient() arg.
The timeout arg is not bool but time.Duration so this comment is confusing.
/cc @shinigambit

/retest


new relase of requests since urllib3 dep was bumped to 1.22

Could we get a new release of requests that uses urllib3 >=1.22 as dependency. Latest released version of requests has urllib3<1.22,>=1.21.1
Thanks
Carlos

See #4196. A new release is planned.

@Lukasa Is there a time frame on that release? Just looking for a ballpark, if possible.

@dmtucker Yeah, there is: early next week, realistically. We try to release on Tuesdays or Wednesdays to allow ops teams time to roll out releases (for boring compliance reasons some places have to take manual steps to handle updates of critical dependencies like us), so expect next Tuesday.

Perfect, thank you!


IA-1897: remove search filter component

SearchFilter commponent was not used anymore anywhere but here
Related JIRA tickets : IA-1897
Self proofreading checklist

[x] Did I use eslint and black formatters
[x] Is my code clear enough and well documented
[x] Are my typescript files well typed
[ ] Did I add translations
[ ] My migrations file are included
[ ] Are there enough tests

Changes

Remove the SearchFilter obselete component
Replaced by InputComponent type="search"
Replaced the SearchButton by FilterButton
Add a setFiltersUpdated prop to OrgunitsFilters to keep the same logic elsewhere in the app disabling the search before any change

How to test

Go to Orgunits list
Try the Search InputComponent
It should work exactly the same as before but now the FilterButton is disabled until a filter input has  a value

Print screen / video
https://user-images.githubusercontent.com/25134301/220413813-e1843f9f-5097-4ed2-a6b5-70f2d0ea34e5.mov

@cypress

See the reasons why the PR switched in Draft : https://bluesquare.atlassian.net/browse/IA-1897?focusedCommentId=57695


CASSANDRA-19278 Avoid over-skipping of key iterators from static column indexes during mixed intersections

patch by Caleb Rackliffe; reviewed by ? for CASSANDRA-19278

Committed as https://github.com/apache/cassandra/commit/87f2a7b7637a346cdeea23e0b74d9968ccfca619


Inconsistent headings on different browsers

I have a site based on an older version of Skinny Bones, but I didn't see anything in the commit log that would relate to this, so I'm guessing this issue would also happen on the current version.
One of my headings
 on the front page of my site is oddly centered when the site is loaded with Chrome (or Chromium), but works perfectly with Firefox. The browser-specific css goes way over my head, so I don't know where to look for solutions. The problem persists regardless of whether I build my site locally or on gh-pages.
You can see the problem by visiting http://jonne.arjoranta.fi/ with Chrome. Look for the second heading, Role-Playing.

The problem isn't isolated to a specific browser, it's actually something much simpler. Inside of the

 elements the post tiles are all floated. What's happening is that second row with the Role Playing h2 isn't set to clear them.
One of the tiles is tall so it pushes over the tile. The easy solution is add something like this to the stylesheet to force headlines to clear any floats and drop down below the tiles properly.

.page-content h1,
.page-content h2,
.page-content h3,
.page-content h4,
.page-content h5,
.page-content h6 {
  clear: both;
}

Or you could apply a the micro clearfix method to .tiles.
The problem is there in FF too it's just more forgiving so you don't notice the improperly cleared floats.

Excellent. Thanks for your help! I chose the first option, since at least there I understand what is happening.


[WIP] Merge rebranding branch into development branch

Don't merge it until it finishes

@perseu thanks for reverting changes. We try not to do rebrand the filenames and related context. We also try to keep code base PIVX or pivx words in the code because keeping them will allow us to create pull requests from PIVX repository to our repository in for the upcoming changes.
I made the similar mistake and @sapphire-pt had alerted me about that.
Of course it's very cool that we set our branding at every line of the code and at every file name. However we do not have enough coder power or community power to apply the changes to all of our 6 coins (and actually the coin project amount increasing constantly by takeovers). So for now we try to make them easily adapted.
In the future, when we can make a stable team of blockchain developers, we surely will rebrand everything. That's the ideal case of course.

@bedri , ok. :)
Thank you! :)


version number increase

Do we want to change the version number in files appveyor.yml check_mkl.py and check_cblas.py for consistency?

probably

I''ve updated the manylinux base docker image as the one we were using was causing segfaults for me, plus the github page for it shows a different one

how?
turns out the segfault is a debian thing, and the newer image is too new for auditwheel so I'm running it on ubuntu


[51PW] Pipeline reproduction (FSL - deriv)

Softwares
FSL
Input data
derivatives (fMRIprep)
Additional context
Other steps of preprocessing, from the fMRIprep data:

intensity normalization
smoothing

List of tasks
Please tick the boxes below once the corresponding task is finished. :+1:

[x] :ok_hand: A maintainer of the project approved the issue, by assigning a :checkered_flag:status: ready for dev label to it.
[x] :deciduous_tree: Create a branch on your fork to start the reproduction.
[x] :sunrise: Create a file team_{team_id}.py inside the narps_open/pipelines/ directory. You can use a file inside narps_open/pipelines/templates as a template if needed.
[x] :inbox_tray: Create a pull request as soon as you completed the previous task.
[x] :brain: Write the code for the pipeline, using Nipype and the file architecture described in docs/pipelines.md.
[x] :blue_book: Make sure your code is documented enough.
[x] :snake: Make sure your code is explicit and conforms with PEP8.
[x] :microscope: Create tests for your pipeline. You can use files in tests/pipelines/test_team_* as examples.
[ ] :microscope: Make sure your code passes all the tests you created (see docs/testing.md).

The current code allows the following correlation values :

Team
Number of subjects
Test status
Correlation values

51PW
20
failure
[0.33, 0.31, 0.38, 0.31, 0.28, 0.12, 0.28, 0.12, 0.04]

51PW
40
failure
[0.45, 0.41, 0.53, 0.41, 0.42, 0.20, 0.42, 0.20, -0.15]

51PW
60
failure
[0.48, 0.46, 0.56, 0.46, 0.51, 0.22, 0.51, 0.22, 0.13]

51PW
80
failure
[0.51, 0.51, 0.60, 0.51, 0.55, 0.27, 0.55, 0.27, -0.06]

51PW
108
failure
[0.57, 0.55, 0.67, 0.55, 0.59, 0.31, 0.59, 0.31, -0.01]

Discussed w/ @bclenet today: I need to look at the design matrix and compare with the description provided by the team


Add quick start guide for running istio on IBM Cloud Private

/cc @rshriram @linsun @todkap

We already mentioned how to use istio on IBM Cloud Private at here https://istio.io/docs/setup/kubernetes/quick-start/#ibm-cloud-private


[Question] Why isn't there a flatMap2, flatMap3...

Is there from functional programming perspective a reason why flatMap[2..x] is missing?
In my sample below, function f returns a TaskEither by using the combined parameter b ,c ,d.
I didn't found another way to solve this with the existing api, so i wrote myself an extension function.
Did i miss something?
TaskEither<L, E> flatMap3<C, D, E>(
    TaskEither<L, C> m1,
    TaskEither<L, D> m2,
    TaskEither<L, E> Function(R b, C c, D d) f,
  ) =>
      flatMap((b) => m1.flatMap((c) => m2.flatMap((d) => f(b, c, d))));

Hi @0xPixelfrost
This is the problem that #26 aims to solve. Using the Do Notation you would be able to collect results. This is not a easy API to design in dart, which is more oriented on OOP than functional. If you have any suggestions or feedback just leave a comment in the issue.
Static Metaprogramming may unlock some new possibilities on this 👀🔜

Thanks you very much for your answer, I really appreciate your work here!
Why not just provide simple functions like below in the first iteration without implementing the Do Notation?
For me, it meets my requirements and could also be easier to start with than implementing the Do Notation
TaskEither<L, E> flatMap2<C, E>(
  TaskEither<L, C> m1,
  TaskEither<L, E> Function(R b, C c) f,
) =>
    flatMap((b) => m1.flatMap((c) => f(b, c)));

TaskEither<L, E> flatMap3<C, D, E>(
  TaskEither<L, C> m1,
  TaskEither<L, D> m2,
  TaskEither<L, E> Function(R b, C c, D d) f,
) =>
    flatMap((b) => m1.flatMap((c) => m2.flatMap((d) => f(b, c, d))));


[Issue] Unable to use JSON as a environment variable that can be used as a parameter for a Terraform input variable type of may(string)

[X] Make sure you've installed the latest version using instructions in the wiki

Output from azd version
Run azd version and copy and paste the output here: 1.8.0
Describe the bug
Unable to use JSON as a environment variable value to be used as input variable for terraform. For example trying to set additional tags on the resource tag.
Error received when running azd provision

│ Error: Root value must be object
│
│   on C:\Users\JohnDoe\repos\azd-starter-terraform.azure\azd-starter-terraform-dev\infra\main.tfvars.json line 1:
│    1: {
│
│ The root value in a JSON-based configuration must be either a JSON object or a JSON array of objects.
╵
╷
│ Error: Missing attribute seperator comma
│
│   on C:\Users\JohnDoe\repos\azd-starter-terraform.azure\azd-starter-terraform-dev\infra\main.tfvars.json line 6:
│    6:
│
│ A comma must appear between each property definition in an object.
╵

ERROR: deployment failed: failing invoking action 'provision', error deploying infrastructure: terraform plan failed: err failed running terraform plan:  (exit code: 1)
TraceID: 7e0c677e6527770bdb5c707fe5b40c31
To Reproduce

Use the azd-starter-terraform template
Update main.tf locals.tags to merge({ azd-env-name : var.environment_name }, var.tags)
Update variables.tf to include variable "tags" {type = map(string)}
Update main.tfvars.json with "tags": "${TAGS}"
Update .env with TAGS={"key":"value","anotherkey":"anothervalue"}

Expected behavior
JSON object set in the .env file to be a valid input
Environment
IDE: Visual Studio Code
Additional context
This may be a feature to be added

Don't think we support env values as JSON @wbreza do we?


:whale: (dockerfile) follow hadolint's best practice

Types of changes

Refactoring

Description

use hadolint to lint dockerfiles
setup github Action as CI/CD pipeline

Try to make your PR easy to review
ref: How to Split Pull Requests – Good Practices, Methods and Git Strategies

[x] annotate Pull Requests: Is there a specific order in which to review
[x] Separate refactoring from features
[x] The feature didn't require too many code changes

Checklist:

[x] Update the documentation if necessary

Steps to Test This Pull Request

build new images
run these services (I'm still new in this community so have no idea how to test these images to be honest 😅 )

Expected behavior

services should remain the same except there's no python's cache-dir

@mattigrthr yea snake case makes sense to me, on it~
seems to me that setup CI workflow in osm-parquetizer makes more sense, that me create a PR for that repo~


Add a clarification about the usage of addOpener

Documentation augmented with a note about the need of using fake protocol in
order to invoke opener on a file already opened.
See discussion at
https://discuss.atom.io/t/difficulties-using-atom-workspace-addopener/20444

I think this would make a solid addition to the docs.
/cc @atom/feedback

let me know if you prefer to have one commit - I can squash and issue a new PR

No, thank you. The Atom team doesn't squash commits. There's just one final change. It wasn't apparent in my comment, but could you surround the URIs with backticks? So /foo/bar/baz.quux → `/foo/bar/baz.quux`, etc. This marks them as "code" in the eventual documentation like this.

Not sure if you received the notification about the commit, but I made the change @lee-dohm suggested.

Thanks for the reminder. Sorry I forgot to check back.


[WFLY-6143] Provide ability to add a server-side configured interceptor for the applications without changing the deployments

A test case that covers global EJB server side interceptors configuration feature.
Jira issue: https://issues.jboss.org/browse/WFLY-6143
Analysis doc: https://github.com/wildfly/wildfly-proposals/pull/180/

@zhantemirov Please coordinate with @tadamski to get this included in his PR #12268.

@bstansberry sure, we have already started discussion on it, thanks.

@mjurc @tadamski please feel free to review and provide your opinions regarding the methods and decisions I made in this test case. Thanks.

@tadamski PR has been rebased.
Going to implement the second test case using CountDownLatch.

Closing based on JIRA comments.


Changed python tutorial to use longitude and latitude coordinates of ISS

@mechanomi Would you be able to take care of the screenshots? I can't replicate the nice drop shadow etc on my Linux machine :cry:

thank you for this!!
let's wait until we've merged in https://github.com/crate/crate-tutorials/pull/5, so that we can sync up the wording

Ill do it in another one :)


🎨  deny auto switch

no issue

deny auth switch after the blog was setup
setup completed depends on the status of the user right now, see comments and issue https://github.com/TryGhost/Ghost/issues/8003

For now we deny the auth switch after blog setup.
I tested all kinds of edge cases e.g. user starts with a blog and switches auth strategies before setup has finished.

Ready to review

Ready to merge 👍 Will push the refactoring PR tomorrow - working on something else right now.


Add language information text field to pois

Motivation
In our target group interviews, we (= target group team) got the input, that end users are insecure about going to pois, because they do not know if the language they know are spoken there. As which language is spoken is very different for every location, we want a text field, and hope the cms users will fill it with, e.g. "on thursday afternoon russian, on other days only german an englisch", or similar.
Proposed Solution

[ ] Decide on a design
[ ] Decide on the state that a language can take on
[ ] For each state add a multi select for languages
[ ] Add checkbox for default text instructing users to check the description or seek the organization for further information
[ ]  Inform users that even if their language is not listed, it might still be arranged/available.
[ ] Put it out in API

Alternatives

We discussed if we just tell the cms users to add this information to the description field, but having this field is a constant reminder and as it is a important feature for the target group, we decided adding this field is the best way to go.
User Story

As a app user I want know if at a poi my language is spoken so that I know if it is worth for me to go there.
As a cms user, I want to add information about languages spoken at a poi.
Additional Context

See: https://openproject.tuerantuer.org/projects/community-feedback/work_packages/3231/activity
blocks: https://github.com/digitalfabrik/integreat-app/issues/2794
Design Requirements

None.

This is pretty similar to #2421, which was closed as it was doubtful whether or not this would be properly filled in by the municipalities and would actually be helpful. I suppose it's up to us to do some careful research about it

Another point of discussion was that it can lead to exclusion: for example, when the (mightiest) languages of an user is not listed or the listed language give an impression that the POI is only for certain (ethnic) groups, they may feel not welcomed.

This issue was added to the milestone Q2 so we don't forget to come back to the discussion. Feel free to move it.

#2421 was closed because it was not flexible/adjustable and this issue #2799 is a compromise to enable municipalities to add infos in their own way, if they want.
from the feedback of the target group it become more significant again..

Draft design 😀

@JoeyStk "Decide on the state that a language can take on": state means language always or sometimes spoken, right?

"Decide on the state that a language can take on": state means language always or sometimes spoken, right?

Yes, exactly :)

@MizukiTemma @JoeyStk here is the design for the language selection.

@osmers @JoeyStk the updated design for language selection is here

@JoeyStk I'll remove the blocked label then? And unassign Nikola - so someone from the CMS team can grab the issue

We could add this issue to the next roadmap (finish till Feb conference) - what do you think?

We could add this issue to the next roadmap (finish till Feb conference) - what do you think?

Yes 🙆

The app team has their corresponding issue blocked by ours but has it planned into their Roadmap till Feb ´25. After talking to @LeandraH it would help if we could maybe split this issue into two

providing the API endpoint so they can complete their issue and
complete this issue in the CMS (also makes sense that the app completes their issue first so that once municipalities can use it, it also shows up in the app)

Do you think this is feasible?

@osmers @nikolahoff
Which languages should the selection list contain? All the languages the region have, or all the languages that exists in our system, or including languages that are not supported in Integreat?

@LeandraH
Is the native name of language enough? Like "Deutsch", "简体中文", "Русский" etc?
Then, we can probably imitate the future API field by adding a list of (random) languages as "spoken_language" to some POIs as sample (for other POIs "sponek_language": Null).

@osmers @nikolahoff Which languages should the selection list contain? All the languages the region have, or all the languages that exists in our system, or including languages that are not supported in Integreat?

Puuuh :D maybe for a start all languages that are covered within Integreat bcs it represents most languages for the target group and thus most languages spoken in Beratungs centers? And then we can add languages upon request?

@LeandraH Is the native name of language enough? Like "Deutsch", "简体中文", "Русский" etc?
Then, we can probably imitate the future API fields by adding a list of (random) languages as "always_spoken_language" and "occationally_spoken_language" to some POIs as sample (for other POIs Null).

Yes, that sounds great, plus a boolean if the text telling the user to check themselves should be shown :)


Auto Attack for Holoparasites

About the PR

Allows holoparasites to hold down the mouse button to get their max attack rate.

Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

add: Holoparasites can now autoattack at their max attack rate when holding down their attack button.

It's jojoing time


Feature request: Auto gif uploading

A way to easily record and share something would be amazing
My current go-to software for this is recordit and I think implementing something like that would make this my go-to software!

The feature to upload to Imgur(Anonymous)/Gifcat(Anonymous)/Yandex is available right now.
I'm currently developing the option to upload to a personal Imgur album.
Also, you can set to copy the link after the uploading.
Is this what you mean?

Yup, that's basically it! It has a few more steps than I would have liked, but for how robust the software is, I'm not complaining! A quicker way of taking screencast and sharing it wouldn't be bad though :P
I would love an easier way to select a portion of the screen. Dragging the mouse of the area you want would be amazing.

I should point out, this software is amazing! wish I could help make it better :D

I would love an easier way to select a portion of the screen. Dragging the mouse of the area you want would be amazing.

Did you try the new recorder?  This is awesome, and exactly what I want :D

How can I help make it better? I know c# if that's helpful

Helping with ideas for improvements and finding/investigating bugs would be awesome. :)

I'm on it!


Cannot Expand Tables in Storage Accounts/Emulator

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.22.1
Regression From
No response
Architecture
x64
Storage Explorer Build Number
20220122.3
Platform
macOS
OS Version
No response
Bug Description
Tables will not expand. It eventually times out with "Connection Refused."
Blob Containers and Queues work as expected.
Steps to Reproduce

Launch Storage Explorer.
Expand Tables.

Actual Experience
It just spins and then provides a "Connection Refused" error.
Expected Experience
I expect Tables to expand.
Additional Context
No response

@vicrxl

Did you start your emulator (it sounds like probably yes, but just double checking :) )?
What emulator are you using, and what version of that emulator?
Are you using the default emulator node, or did you create your own emulator connection? If you created your own, can you make sure that the port number is correct for the connection.

Closing due to lack of response.


MAINT: Fix primary spot typing (#530)

Codecov Report

Merging #533 (c002269) into main (0460355) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #533   +/-   ##
=======================================
  Coverage   98.49%   98.49%
=======================================
  Files          51       51
  Lines        2063     2063
=======================================
  Hits         2032     2032
  Misses         31       31

Impacted Files
Coverage Δ

pfhedge/instruments/primary/base.py
99.09% <ø> (ø)

pfhedge/instruments/primary/cir.py
100.00% <ø> (ø)

pfhedge/instruments/primary/brownian.py
97.72% <100.00%> (ø)

pfhedge/instruments/primary/heston.py
100.00% <100.00%> (ø)

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 0460355...c002269. Read the comment docs.


--no-default-features doesn't work with workspaces

If you have a workspace and call cargo build -p some-package --no-default-features it deactivates the features of the Cargo.toml of the current working directory instead of the package's default features. So if you change your directory to the package's, then --no-default-features suddenly works again.

It seems like this is https://github.com/rust-lang/cargo/issues/5364


Adds a span to contain the text on all crud buttons

@gabacode on gitter asked for an easy way to hide the text on table buttons. I needed this myself previously. For now I came up with the idea of shrinking the width of the button and "overflow hide" the text. It a very hacky way to solve this.
This PR makes it easier to access and hide the text (without icons) inside buttons.
One may do now something like; #crudTable .btn span { display: none }.

A new inspection was created.

I end up adding the span container to other crud buttons, it may be useful.
If there is an easy way do it without this PR, please let me know 😂

The inspection completed: No new issues

I don't think it can get easier than this.
The other solution would be to use some regex in element.innerHtml and keep only the icon part or move the icon away from the text, either by using pseudo css selectors like :before or some classes in the anchor.
You also have the option to override all the fields, but it's a big effort for such a small change.
Down the road you can also add a crud setting hideTableButtonsText => true for the ListOperation.
Best,

This is a great solution but it sems to be breaking when setupShowOperation() on my side, unless  "display: inline-flex;" is also added to the class, otherwise it will show as such:

A crud setting for this option would be great!

@gabacode what solution is that screenshot of? The overflow hidden approach or the span?

@gabacode what solution is that screenshot of? The overflow hidden approach or the span?

@promatik that's the span with overflow hidden, but from the "Preview" mode

A new inspection was created.

The inspection completed: 3 updated code elements

A new inspection was created.

@gabacode the idea of the <span> option, is to avoid the overflow: hidden plus width: forced px and use display: none directly to the span.
@pxpm where do you think we should add the setter and the getter for the crud config? I add it CrudPanel/Traits/Buttons.php not sure if it's the right choice.
The crud config is a good idea 👌 this way you can add it directly on crud.configs, or you can ignore this and create your own css rules, perhaps with media queries.

The inspection completed: 3 updated code elements

@gabacode the idea of the <span> option, is to avoid the overflow: hidden plus width: forced px and use display: none directly to the span.
@pxpm where do you think we should add the setter and the getter for the crud config? I add it CrudPanel/Traits/Buttons.php not sure if it's the right choice.
The crud config is a good idea  this way you can add it directly on crud.configs, or you can ignore this and create your own css rules, perhaps with media queries.

Got it! I now added the spans, much better.

@promatik I think instead of using getters and setters in the crud panel we should use the Settings Api so in setupListOperation() dev could:
// .... columns etc

CRUD::setOperationSetting('hideTableButtonsText', true);

I agree with @pxpm - the Settings API should be better here. Since this is non-essential functionality, let's not bloat up the Buttons class with something just one operation uses.

Now, I do agree this is a good change. And I see where it's needed - I have some CRUDs with a lot of buttons too and it's not the best UX. So I want a solution too.
But I'm also worried that if we hide the button texts:

The buttons will become to small to easily click (especially on phone/tablet)
The buttons will not be intuitive enough, with the icon alone, especially for custom buttons; normally I just pick something that's closest to what I need; but except for Edit and Delete, you wouldn't know what a button does until you click it, if it didn't explicitly say next to it "Mark as Paid" or "Send reminder" or something like that; so default buttons will probably just fine; but custom buttons will probably need the text to be clear what they do;

What do you guys think about this? Valid worries right?
Ideas:

For (1) we could make the icon a little bigger if the text is hidden; don't know how good it'd look though;
For (2):

on desktop - we could add a tooltip; We should probably trigger the Bootstrap tooltip globally anyway, so that it's easy for people to add tooltips to their stuff by just adding data-toggle="tooltip" title="Mark as Paid". If that happens (globally triggered tooltips) we could just make sure buttons have tooltips - which would solve the problem on Desktop. But...
on mobile - the action column is probably hidden, so it makes no sense to hide the button texts here; I think it would make for a better UX to show the buttons with texts, because they are easier to read and easier to click;
on tablet - here's where it's trickier; because the action column could be hidden, but it could not; and you also have no tooltips like you do on desktop; so over here it's probably better to just assume the same as mobile and NOT hide the button texts;
which brings me to the conclusion that... maybe we should only hide the button texts if the action column is not hidden? is that the solution? I don't know, I'm asking - what do you guys think?

A new inspection was created.

The inspection completed: No new issues

A new inspection was created.

@tabacitu on Desktop I have already added a tooltip, and I agree, icons should be slightly bigger.
And I also agree this works good on desktop, not so good on mobile.
So by default, I think we should provide this solutions for desktop only.
Tell me what you think about the new changes:

Desktop

Mobile/Tablet

Tooltip:

The inspection completed: No new issues

Hello guys.
I agree with both of you about visibility and UX. But I still want my tablet icons to don't show text, I am the developer. Maybe I have only one action, and don't need labels at all.
If we are pushing some change in this behavior we better be flexible and don't limit to our understanding of what could be better for user. Sure, I think we have good understanding of what works best as default for the user, but in the end we are building software for developers.
'showButtonLabels' => [
    'mobile' => true, //we can use mobile up to tablets, because like tabacitu said if it's small screen (not tablet) actions is almost certain hidden.
    'desktop' => true
];

I am pretty sure someday we will be talking about showing label in one action and not in another. It's just how things goes.
What you think @promatik ?

I missed but I totally agree. Sorry for that. It's good enough that we have that solution. I think if it's documented for who wants to to change that it's easy enough to understand. I was just not thinking in that direction 🤣
Best,
Pedro

A new inspection was created.

The inspection completed: No new issues

A new inspection was created.

@pxpm just refactored this, can you give it another try?

The inspection completed: No new issues

Please read my comment above - https://github.com/Laravel-Backpack/CRUD/pull/3320#discussion_r546680313
I'm moving this to 4.2 because one thing none of us remembered is that "This is a FEATURE". And we said we're in a feature freeze in 4.1 😄

A new inspection was created.

The inspection completed: No new issues

This has spiraled out of control, so I'm shutting it down. We thought this would be a quick change ("just add span to all buttons") but it's become a lot more, and I don't agree with it:

I don't agree with making it too easy for people to just toggle "hide labels"; icons without labels is bad UX;
I don't agree with making it different on mobile or tablet;
we already have a solution to make the buttons smaller nowadays, which is compressing all the buttons into a dropdown, by doing 'lineButtonsAsDropdown' => true in your config/backpack/operations/list.php;

For the reasons above, I'm closing this PR. If you guys think I'm wrong, and we should add spans to buttons, then fine, create a PR that does that and only that. Should be simple to do and merge. But more than that? No.
Let's be more mindful, and not let ideas spiral like this any more, please.
Cheers!


Info

In your Readme section
Why you have put ?
No Plugin Manager
Copy all of the files manually into your ~/.vim.
What's the use of this.

If you don't have a plugin manager for vim, those are the installation instructions.


🐛 Fix unicode literals for C++20

This PR fixes a bug occurring under C++20 involving unicode literals and UTF-8 strings. For further context, see https://stackoverflow.com/questions/56833000/c20-with-u8-char8-t-and-stdstring). The workaround is taken from https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r2.html.

Merging despite the red coverage check. This PR changes 4 lines and one of them wasn't covered by tests before.


Fix job comparator of print queue

The comparator used in the PriorityBlockingQueue of our thread pool had two problems: It was never called and it was wrong.
This only seemed to be a problem when maxNumberOfRunningPrintJobs was set to 1 (see #217 ), but anyway this PR fixes it by adding the creation time to PrintJob and by making sure that the comparator using the creation time is really called.
Closes #217

Look fine to me

Thanks for the review!


assests folder Removed from base dir

For some reason part of the app is expecting some of the UI icons for the network visualization under localhost:8080/assets/... etc directory and when it couldn't find them there, first it throws errors on the browser console. But, then somehow it grabs them elsewhere and you could see the network.
But, moments before they are displayed correctly, you'd see the network with no icons for the layers.
Then, it flashes and replaces them with the actual icons. When you look at the console, you'd see the 404 errors (see the attached image).

It looks like it is related to https://github.com/brollb/deepforge/issues/185. Have you made sure your project is up to date (git pull)?

Yeah, it looks like it is related. But, you closed that issue yesterday and I got a clean copy this morning. I will still pull and try to see if that fixes it if you have modified it today.
But, it looks like some where some code is still referencing that assets directory although it didn't break the regular working process.

Can you check if your config/configuration.base.js reflects the change in https://github.com/brollb/deepforge/commit/7b5732f964c6657840f611dc5b1071e5f8b31b0b?
It should just be the removal of one line

I just found this problem - although the svgs weren't used, they are still loaded in the newer versions (post 1.4.0) of webgme. This has been fixed in branch 173 and will be merged with the data refactor.
I am bending the rules of the feature branches here (by fixing two issues on one branch) bc these issues both change the seed file and I pretty much can't fix merge conflicts as it is a binary.


Refactor to not reschedule at every call

Allows the skill to load again
Restructures the code to not reschedule the oauth check

Question @forslund -

Is there a Mopidy dependency to run this ?
Is this now available on home.mycroft now ?

This should be device agnostic. On the mark-1 we use librespot as a spotify node to handle playback. On the desktop it will work with the normal spotify client and should work with Spotify enabled devices.

Still not available, later today if all tests succeed.

hey @forslund so I can see that the whitelisting has been committed and its available on home.mycroft. could you please clarify if I need to run mopidy on rpi to use this skill ?

A spotify connect node is needed to play locally on the pi. librespot/raspotify provides this. I am not sure mopidy does, but if it does it can be used.

Got it. So I can install raspotify separately on RPi and this skill should
still work ?
On Fri, 30 Mar 2018 at 5:51 PM, Åke<EMAIL_ADDRESS>wrote:

A spotify connect node is needed to play locally on the pi.
librespot/raspotify provides this. I am not sure mopidy does, but if it
does it can be used.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/forslund/spotify-skill/pull/24#issuecomment-377513258,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA0tR6nrC_if5ah0XXZFkGe5MmMj_nrSks5tjiNOgaJpZM4S6VOX
.


Button "Copy to Clipboard"

Hallo, i create custommessagebox  with my choosed colors. How do i set visibility button "Copy to Clipboard" in messagebox to none visibly. There is no button for change in custommaterialmessagebox class to change it or do i need to override default style ?

var msgerror = new CustomMaterialMessageBox
{
TxtMessage = { Text = "SQL ERROR : " + error , Foreground = Brushes.White },
TxtTitle = { Text = "SQL ERROR", Foreground = Brushes.White },
BtnCancel = { Content = "OK", Background = Brushes.Gray, BorderBrush = Brushes.Gray },
BtnOk = {Visibility = Visibility.Hidden },
MainContentControl = { Background = Brushes.Gray },
TitleBackgroundPanel = { Background = Brushes.Red },
BtnCopyMessage ={ Visibility =Visibility.Hidden},
BorderBrush = Brushes.Red
};

Thanks for the suggestion @hubertkrzepkowski
I updated your solution so that you can still use the 'OK' button and receive results as expected.
CustomMaterialMessageBox msgerror = new CustomMaterialMessageBox
 {
     Title = "SQL ERROR",
     TxtTitle = { Text = "SQL ERROR", Foreground = Brushes.White },
     TxtMessage = { Text = "SQL ERROR : " + "SQL has issues", Foreground = Brushes.White },
     BtnOk = { Content = "OK", Background = Brushes.Gray, BorderBrush = Brushes.Gray },
     BtnCancel = { Visibility = Visibility.Hidden, Width = 0, Margin = new Thickness(24, 5, -24, 5) },
     MainContentControl = { Background = Brushes.Gray },
     TitleBackgroundPanel = { Background = Brushes.Red },
     BtnCopyMessage = { Visibility = Visibility.Hidden },
     BorderBrush = Brushes.Red
 };

 msgerror.Show();
 MessageBoxResult results = msgerror.Result;

I also made the custom message default visibility to false for others to find it more easily.


Microsoft.Bot.Builder.Integration.Runtime doesn't have Bot Framework ICON

Describe the bug
There should be an icon

Version

Browser

[x] Electron distribution
[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[x] Windows
[ ] Ubuntu

To Reproduce
go to packagemanager and view
Expected behavior
The bot framework icon

resovled.


Swarm Mode with Docker for AWS

This is already explained at https://github.com/docker/labs/blob/master/developer-tools/java/chapters/ch08-aws.adoc. What else were you planning to add?
I'm planning to rev all the content for DockerCon EU anyway.

This was a generic, not Java specific lab.

OK, feel free to assign this to me, will be happy to contribute.

I can't assign it to you since you're not in the Docker Org, but consider this your assignment

ok

@ManoMarks what would you like to be covered in this, in addition to the existing content?


Reproduce results of NetVLAD on RobotCar Seasons v2

@Tobias-Fischer @oravus
Hi,first,I really appreciate for your work. I'm trying to reproduce results of NetVLAD on RobotCar Seasons v2 in the Table 1 and Supplementary Table 1,but encountered some problems.I have extracted the global descriptor using Netvlad with netvlad_extract.ini.May I ask if it is convenient to supplement the subsequent code to facilitate the reoccurrence work？Perhaps it would be better to have detailed instructions.
I am always looking forward to your kind response.
Best regards.

Hi @MAX-OTW, this is something I've been working on, I will try to release some code to replicate the entire reproduction of Patch-NetVLAD on the Visual Localization Challenge server soon.
In the meantime, I can offer the following suggestions:
To evaluate Patch-NetVLAD on RobotCar Seasons, to populate the query poses we copy the corresponding reference pose for the best retrieved reference image. Basically you need to write a function that copies the 6dof pose across, so your input to the function will be a predictions file and the output will be a pose file. The format per line of this file looks like: "left/1418721439517734.jpg 0.752168 -0.640854 -0.153381 0.00493814 -78.7556 -25.9724 54.9404"
Also have a look at this repo, which might help: https://github.com/cvg/Hierarchical-Localization (this repo has available code to create these submission files).

Hi @StephenHausler ,could you please release the code and specific steps for reproducing the results of NetVlAD algorithm on RobotCar Seasons V2? I am currently preparing to reproduce this in my work. Could you please help me? Thank you very much and look forward to receiving your reply soon!

Unfortunately due to other deadlines I'm probably not going to get around creating the full reproduction scripts for a few weeks. In the meantime, I can attach here some code which will create the challenge submission file (note, you'll need to install Kapture to use this file). You also need to download RobotCar Seasons locally and structure the dataset using the Kapture file format, unfortunately this may not be trivial. The script has an input arg -p, which is used to input the pairsfile produced by the code in our repo. I've pasted the code below:
import argparse
import os
from collections import defaultdict
import pathlib
import kapture
import kapture.io.csv as csv
if name == 'main':
parser = argparse.ArgumentParser(
description='use pairsfiles and kaptures for pose estimation using image retrieval')
parser.add_argument('-p', '--pairsfile-path', type=str, required=True, help='path to pairsfile')
parser.add_argument('-m', '--mapping-path', type=str, required=True, help='path to mapping kapture')
parser.add_argument('-o', '--output-path', type=str, required=True, help='path to output LTVL challenge file')
parser.add_argument('-d', '--decreasing', action='store_true',
help='set if descending scores indicate a better match')
parser.add_argument('-i', '--inverse', action='store_true',
help='invert poses before recording them down in output file')
args = parser.parse_args()
kdata_mapping = csv.kapture_from_dir(args.mapping_path)
if kdata_mapping.rigs:
    mytraj = kdata_mapping.trajectories
    myrigs = kdata_mapping.rigs
    kapture.rigs_remove_inplace(mytraj, myrigs)

with open(args.pairsfile_path, 'r') as f:
    image_pairs = csv.table_from_file(f)

query_lookup = defaultdict(list)

for query, mapping, score in image_pairs:
    query_lookup[query] += [(mapping, score)]
    # query_lookup[query] += [mapping]

# locate best match using pairsfile
best_match_pairs = []
for query, retrieved_mapping in query_lookup.items():
    if args.decreasing:
        best_match = min(retrieved_mapping, key=lambda x: x[1])[0]
    else:
        best_match = max(retrieved_mapping, key=lambda x: x[1])[0]
    best_match_pairs += [(query, best_match)]

# recover pose from best match
fname_to_pose_lookup = {}
for ts, cam, fname in kapture.flatten(kdata_mapping.records_camera):
    fname_to_pose_lookup[fname] = mytraj[ts, cam]
image_poses = {query: fname_to_pose_lookup[mapping] for query, mapping in best_match_pairs}

# LTVT2020
p = pathlib.Path(args.output_path)
os.makedirs(str(p.parent.resolve()), exist_ok=True)
with open(args.output_path, 'wt') as f:
    for image_filename, pose in image_poses.items():
        if args.inverse:
            pose = pose.inverse()
        line = [image_filename] + pose.r_raw + pose.t_raw
        line = ' '.join(str(v) for v in line) + '\n'
        f.write(line)

Hello, @Tobias-Fischer @StephenHausler ，I wonder where Mapillary (challenge/test) results are evaluated in Patch-netvlad paper？Can you tell me how I should evaluate, and of course there are specific steps that would be better.
Hope to get your reply as soon as possible.
Thanks & Best Regards!

Hi @MAX-OTW, the Mapillary results are found in Table 1, in the columns Mapillary (Challenge) and Mapillary (Val. set).
Here are the city allocations for the train, val and test (challenge) sets:
'train': ["trondheim", "london", "boston", "melbourne", "amsterdam", "helsinki",
"tokyo", "toronto", "saopaulo", "moscow", "zurich", "paris", "bangkok",
"budapest", "austin", "berlin", "ottawa", "phoenix", "goa", "amman", "nairobi", "manila"],
'val': ["cph", "sf"],
'test': ["miami", "athens", "buenosaires", "stockholm", "bengaluru", "kampala"]
To get the results on the val set, you need to install https://github.com/mapillary/mapillary_sls and run evaluate.py passing in the predictions produced by Patch-NetVLAD.
To get the results on the test set, you'll need to do some investigation to find where the latest challenge submission portal is located now. Take a look at: https://sites.google.com/view/ltvl2021/challenges
(Mapillary does not release ground truth data for the test set, you will need to find the latest submission portal, or email the Mapillary team)


Is there caching involved?

Hello,
I have just started to use this service - nice work!
I am wondering if there is a caching mechanism in place and how long expiry is set to?
When I look here:
https://deno-visualizer.danopia.net/dependencies-of/https/raw.githubusercontent.com/flowscripter/template-deno-executable/main/mod.ts
it seems to be out of date compared to the deps file which ends up being loaded here:
https://raw.githubusercontent.com/flowscripter/template-deno-executable/main/deps.ts
Or is this HTTP cache headers coming from raw.githubusercontent.com which is getting in the way?
Any help or advice appreciated.
Thanks again,
Nick

I'll close this as the info is now updated (about 3 hours later). So there is some kind of caching or eventual consistency happening somewhere. But at least I know it is in the order of hours.
Sorry for the noise then... and thanks again.

Hello, thanks for your interest :)
Yes there is some degree of caching. Actually, the caching is what Deno itself implements - if you run deno run on the same URL multiple times, it doesn't redownload the URL each time unless --reload is passed. Deno wants the same URL to always resolve to the same data.
As a workaround, replace 'main' with a specific githash to make sure you are visualizing the dependencies as-of a specific commit. For example: https://deno-visualizer.danopia.net/dependencies-of/https/raw.githubusercontent.com/flowscripter/template-deno-executable/6c67ada45ebcbbb21ec0784a6a7d0dd2fc316431/mod.ts
Because the deno cache is stored on a temporary filesystem, it will be disposed when the app goes idle (more than maybe ~15 minutes without activity, but not well defined). While the app is being actively used the cache will stay in place.
This is currently undocumented so I'll address the lack of documentation before closing. (editor's note - oops too slow)
Cheers


fix: improve twitter post content quality

Relates to:
Issues with duplicate twitter content being posted
Risks
Low
Background
What does this PR do?
Reduces duplication of Twitter content and reduces tokens used for twitter post generation.
The two key changes were:

Removing previous posts from the generation prompt as this influenced the model into repeating previous content even though the prompt asked it not to. Previous posts do not provide value when generation posts. For tweet interactions we already include exists posts in the thread so including previous posts (timeline) is not necessary.
Improve the prompts to remove unused blank lines and to better organize the structure of the context. These changes should improve response quality.

What kind of change is this?
Improvement

Documentation changes needed?

Testing
Where should a reviewer start?
Detailed testing steps

LGTM, as long as that discussion didn't change a variable name and break anything

Not a review just comments:
While it’s hard to argue with results. I think the context of the recent public tweets could be useful for keep the agent focused and less random. But that can be reintroduced later when it’s more thought through and tested.
I also feel like some comments in the code explaining these changes would be helpful, so they’re not reverted.

I think since we're already providing a fair amount of context to the model about the agent (knowledge, topics), the responses tend to not be very random. They all seem relatively related to eachother even without providing the last few tweets.


Support funcignore

Background
Fixes: https://github.com/Azure/functions-action/issues/36
Introducing a new parameter respect-funcignore: , this will parse the .funcignore file from your package path.

Codecov Report

Merging #56 (e5a8989) into master (769d567) will decrease coverage by 0.26%.
The diff coverage is 76.92%.

@@            Coverage Diff             @@
##           master      #56      +/-   ##
==========================================
- Coverage   79.92%   79.65%   -0.27%
==========================================
  Files          19       20       +1
  Lines         533      585      +52
  Branches       97      104       +7
==========================================
+ Hits          426      466      +40
- Misses        107      119      +12

Impacted Files
Coverage Δ

src/handlers/parameterValidator.ts
75.72% <0.00%> (-1.50%)
:arrow_down:

src/managers/builder.ts
100.00% <ø> (ø)

src/utils/index.ts
100.00% <ø> (ø)

src/handlers/contentPreparer.ts
79.81% <66.66%> (-2.80%)
:arrow_down:

src/utils/funcignore.ts
87.09% <87.09%> (ø)

src/constants/configuration.ts
100.00% <100.00%> (ø)

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 769d567...6a1e9e0. Read the comment docs.


SendReportUsage API - allow accepting 202 response, in addition to 200 response

[x] All tests passed. If this feature is not already covered by the tests, I added new tests.
[x] This pull request is on the dev branch.
[x] I used gofmt for formatting the code before submitting the pull request.

@Or-Geva - I pushed another commit, following a comment from @yahavi .


[Masthead, search] Scoped search design study / exploration

Brief
By default, a visitor of IBM.com can search in all of IBM.
Scoped search, when turned on, allows a visitor to choose to search within specific categories within IBM, such as searching within Docs for documentation, or within Products catalogue for products.
Additional Information

See the epic (#7267) for the overarching descriptions of the work.
Nielsen Norman Group's recommendations
Never forget, search result page. How is the "scoped-ness" communicated on the Search result page? Need design explorations (based on the 3 adopters above) and gather usage guidance.
Competitor examples
Should work with the following other teams:  IBM Docs (Dallas Hudgens), ibm.com Masthead Search (Dave McDuff)

Acceptance Criteria

[ ] Design direction(s) has been identified, reviewed, and approved for the final design phase
[ ] The next story has been updated with the design direction

Reducing points to 2 and adding the rest to Spec ticket


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative/client-wg-leads
/assign knative/client-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/serving 8fc6d87...e9a0ce9:
  > e9a0ce9 Update net-gateway-api nightly (# 13183)
  > e600ae7 Make Kingress reconciled with DomainMapping when adding a new label (# 13178)
  > bfa381a Update net-gateway-api nightly (# 13180)
  > 9574ddb Update net-contour nightly (# 13179)
  > 875937b upgrade to latest dependencies (# 13177)
  > 782df98 Qp options config additions only (# 13162)
  > 034035b add paul to party, update sched through 2022 (# 13174)
  > a2cf188 Add e2e test for DomainMapping working with websocket. (# 13077)
  > 02d89d8 Update net-contour nightly (# 13171)
  > 77340bb Update net-kourier nightly (# 13170)
  > f846b2c bumping go.mod to v1.18 (# 13169)
bumping k8s.io/api e08b72c...f89a761:
  > f89a761 Update dependencies to v0.23.9 tag
bumping k8s.io/apimachinery 276a8a7...276a8a7:
bumping knative.dev/pkg 449f7e6...a01dfed:
  > a01dfed bump to k8s 0.23.9 (# 2565)

/approve
/lgtm


Generate command to create settings for storybook

Paths that it needs to reference for pulling content.

Fixed in #28


config/runtime.exs

In your README, you state that this isn't compatible with Elixir Releases because you can't use this module at compile time, which makes sense. But in Elixir 11, they added a new runtime configuration file documented here. Could you document how one might use this module using this config/runtime.exs file? Or is it still not possible?

@ksmithut interesting! Do you know where I can learn more about runtime.exs the documentation you linked to is pretty sparse. How is this different from the other configuration options?
I don't personally use releases, so your best bet is trying dotenv with runtime.exs to see if it supports runtime loading of configuration. Let me know what you find!

@iloveitaly Ya, their hex docs are very sparse... Looks like the best one I could find was their 1.11 release announcement.
So I haven't tried building it with releases, but I put this at the top of my config/runtime.exs file and it loads it in mix mode:
use Mix.Config
Dotenv.load!()

I'm still tweaking usage, I'm still pretty new to Elixir. Right now my setup isn't working with releases, but I'm diving in to get a setup that works. I'll let you know what I find.

Okay, I was able to get it to work with that tweak with one minor alteration. In my config/runtime.exs instead of use Mix.Config I used import Config, so the top of my file looked like this:
import Config
Dotenv.load!()

And it loads from my .env file just fine :)

@ksmithut nice, that's awesome! Do you know if runtime loads in prod as well? My guess is if you are doing a Heroku-style deploy (i.e. without releases) you'd actually want Dotenv not to run in that environment.

I believe runtime loads in prod as well, though you could probably do a check for the environment before calling Dotenv.load!

In my testing, this package worked fine with releases.  I included an example of this in PR #40
In short, in your runtime.exs, you can do something like this:
import Config

if config_env() != :test do
  Dotenv.load(".env")
  config :yourapp,
          db_url: System.fetch_env!("DB_URL"),
          # ... etc ...
end


PhaBOX not installable via conda

When running
conda create -n phabox2 jyshang2::phabox=2.1 -c bioconda -c conda-forge -y

like specified in the wiki, the following output and error is shown:
Channels:
 - bioconda
 - conda-forge
 - defaults
 - jyshang2
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: failed

LibMambaUnsatisfiableError: Encountered problems while solving:
  - package phabox-2.1.0-pypy_0 is excluded by strict repo priority

This is happening on Ubuntu 24.04.1 LTS with conda version 24.9.1 (miniconda3).

I was having the same issue but found that running this instead worked:
conda create -n phabox2 jyshang2::phabox -c bioconda -c conda-forge -y
I followed the rest of the steps at: https://github.com/KennthShang/PhaBOX/wiki
But I had to downgrade to numpy 1.26.4 to get it to run

Hi everyone,
I finally repeated the problem and found the bug. This is because the current package is built based on a system with the latest GPU setting. Please use the following codes as a temporary way to install phabox2. The problem will be fixed within today and let you know as soon as possible:
conda create --name phabox2 python=3.10
onda activate phabox2
conda install diamond=0.9.14 blast=2.16.0 mcl fasttree=2.1.11 kcounter=0.1.1 mafft=7.525
conda install numpy=1.26.4 pandas=2.2.3 networkx=3.4.2 seaborn-base=0.13.2 biopython=1.84 tqdm=4.66.5 scipy=1.14.1
conda install datasets transformers pytorch triton accelerate prodigal-gv

git clone https://github.com/KennthShang/PhaBOX.git
cd PhaBOX
python  -m pip install . -vv

Best,
Jiayu

The phabox2.yaml is also updated.
Best,
Jiayu


log_mix on the logit scale

Now that we have log_mix defined on the natural probability scale:
log_mix(theta, lp1, lp2)
  = log(theta * exp(lp1) + (1 - theta) * exp(lp2))
  = log_sum_exp(log(theta * exp(lp1)), log((1 - theta) * exp(lp2))
  = log_sum_exp(log(theta) + lp1, log(1-theta) + lp2)

it'd be nice to roll in the link function (inv_logit) and just work on the unconstrained log-odds scale with
log_mix_logit(alpha, lp1, lp2)
  = log_mix(inv_logit(alpha), lp1, lp2)
  = log_sum_exp(log(inv_logit(alpha) + lp1, log(1 - inv_logit(theta)) + lp2)

Special functions log_inv_logit and log1m_inv_logit already exist.

This issue was moved to stan-dev/math#69


Access patterns to config in instrumentations

Now that https://github.com/open-telemetry/opentelemetry-js/pull/4659 will soon merge, all instrumentations can apply cleanups to how the config object is consumed.
There are now 2 options:

using this._config from InstrumentationAbstract which is now typed correctly.
using the getConfig() function from the Instrumentation interface.

I think we should decide which one is superior and refactor all existing instrumentations to use a consistent pattern. I tend to prefer the getConfig option as the getter can potentially be overridden with custom logic which will be lost if we simply access the _config property.
If we choose option (2), should we make the _config object private instead of protected?
Would love to hear more opinions.

Pros options 1:

shorter to write
bit more performant (I think)

Pros options 2:

will work correctly for advanced cases if the function is overridden
can make _config private to decrease API surface.
aligns will with tracer, meter and logger class properties, which are private and are only accessed via a getter.

Here is my opinion. If we already have a public API to access the field I think we should leverage that for accessing even in subclasses. Also I'm not sure about the significance the perf gain of having direct access to the config which is the most appealing pro of option 1.

Implemented in https://github.com/open-telemetry/opentelemetry-js-contrib/pull/2289
Would appreciate any review on this PR 🙏


Cannot update an API which has custom endpoints and which has CORS enabled

Context
I have a Zappa API to which I add extra endpoints manually and which has CORS enabled. I have extra endpoints because they need a different authorizer than the ones handled by Zappa do.
With the latest master the deploy process crashes during deployment, because my extra endpoints do not have OPTIONS methods, and the CORS code added in https://github.com/Miserlou/Zappa/pull/1011 tries to update the OPTIONS method of every resource.
Expected Behavior
Should be able to update an API which has custom endpoints and which has CORS enabled
Actual Behavior
An error happens
==============

Traceback (most recent call last):
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/zappa/cli.py", line 2489, in handle
    sys.exit(cli.handle())
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/zappa/cli.py", line 473, in handle
    self.dispatch_command(self.command, stage)
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/zappa/cli.py", line 517, in dispatch_command
    self.update()
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/zappa/cli.py", line 904, in update
    self.zappa.add_binary_support(api_id=api_id, cors=self.cors)
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/zappa/core.py", line 1320, in add_binary_support
    for resource_id in resource_ids:
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/botocore/client.py", line 254, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/Users/craig/.virtualenvs/service-user/lib/python3.6/site-packages/botocore/client.py", line 558, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.errorfactory.NotFoundException: An error occurred (NotFoundException) when calling the UpdateIntegration operation: Invalid Method identifier specified

==============

Possible Fix
Only update the content handling on resources with have an OPTIONS method.
Steps to Reproduce

Create and deploy a Zappa API with CORS enabled
Add an extra resource using the AWS web console
Re-deploy the API using Zappa

Your Environment

Zappa version used: Latest master -
https://github.com/Miserlou/Zappa/commit/a21c9733eb82725f178190b75918cc810a9bc613
Operating System and Python version: Python 3.6
The output of pip freeze: n/a
Your zappa_settings.py:

dev:
  app_function: app.wsgi.the_app
  aws_region: eu-west-1
  cors: true
  manage_roles: true
  project_name: my-project
  runtime: python3.6

@eely22 FYI

Fixed in #1036


ERROR

Sometimes I noticed this error, even though the round hadn't started yet.

Hi,
The issue should be fixed in the develop branch.
The develop branch also contain some of the features of 0.4 so I would advise you to wait for the release of 0.4 (around this weekend) before updating as they need more testing.


Restrict access to secrets directory

Currently, the setup command creates the secrets directory with 0755 permssions.  Aiming for security by default, this should be changed to 0700 or 0750.
Ideally, the individual secrets would additionally be secured in the same way.

Should be done.


Support for resumable uploads

Support for resumable uploads

Can you please elaborate?
At the moment Upload API does not support this, so, probably, it's impossible to do that in the client.
But I want to know what you want here specifically.

Using the Content-Range HTTP header the client could ask the server how much of a file was stored, so the client could send only the missing part of the file, instead of try send the entire file again. This is very important for real case scenarios on mobile devices where the network is sometimes unstable (losing many packages) or slow quite often.

Yeah, i know the server does not support. I tried to implement in the client, but I would need support for this feature in the server side.

This also could be a way to upload big files in chunks.

@heyzooi jfyi, I know it's maybe way past late, but we'll try to do it in uploadcare-swift. :-)


Different env files for dev and prod

Hi, how can I access different env files (ex: .dev.env , .prod.env) based on the environment?
I tried to define process.env.NODE_ENV during the build script but in runtime I get an error process is not defined.
Basically I'd like to have build for DEV and build for PROD and based on the access different env files.

See https://github.com/yuanqing/create-figma-plugin/issues/127#issuecomment-1292150266
Then add something like this to your package.json scripts:
"build-production": "NODE_ENV=production build-figma-plugin --typecheck --minify"

See #127 (comment)
Then add something like this to your package.json scripts:
"build-production": "NODE_ENV=production build-figma-plugin --typecheck --minify"

Ok this worked, but how do I then load a different .env file based on the NODE_ENV value?
For example in NODE_ENV=production I want to load process.env.YOUR_DOMAIN from .prod.env and in NODE_ENV=dev I want to load it from .dev.env
Not sure how to configure it in build-figma-plugin-ui.js

Does this comment help? https://github.com/yuanqing/create-figma-plugin/issues/127#issuecomment-1293194888
You can write custom logic (including writing or calling your own custom esbuild plugin) in build-figma-plugin.ui.js

@yuanqing  the comment doesn't help. when running the figma plugin it will read the env (NODE_ENV) incorrectly

I suspect that there’s something you’ve misconfigured. If you’re able to provide a repo with a simple reproduction of the issue, it’d be helpful for investigating further


Host labels mix ro and rw informations

Host labels are currently a mix of "read-only" (undocumented) and read-write informations.
As of rancher-agent 1.2, 4 computed labels are currently returned:

io.rancher.host.agent_image
io.rancher.host.docker_version
io.rancher.host.kvm
io.rancher.host.linux_kernel_version

What I expect
The labels API should let me specify additional labels (configuration, such as io.rancher.host.external_dns_ip) without altering internal data
What happens
If I use the API to manage additonal labels, it removes automatic labels that are computed from host informations.

They're not read-only, actually special in any way, or used by us for much of importance.  They are pushed in by the agent periodically mainly for use as scheduling option inputs on services.

@vincent99 right. I should have said "computed" instead. The point is that the labels map mixes live data (these computed labels) and configuration (other labels) which is a problem to manage configuration in an idempotent manner.

With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.


Last message of thread not update after delete particular message.

There is one bug which I found on sender side in Conversations tab,
When I trying to delete particular message than. the message will be deleted from the both side, but the last message of thread which is displayed in the conversations tab is not get update.

Fixed in 4.6.0.


Provide documentation for the docker build and push github workflow

Closes #132

Note: The markdown issues are fixed inside this pull request: https://github.com/ai-cfia/howard/pull/158


Use linker keywords for linker scripts in cortex-m GNU example_build projects.

This PR uses linker keywords to eliminate repetitive numerical values for segment location and size. This will make it easy and less error-prone to port the linker scripts to different boards.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: kahlonel sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Hi @kahlonel - I like your idea; thank you for bringing this up! We will likely make these changes and do some testing internally to make sure everything builds and runs as expected, then roll it out. I'm not sure it will make it into the next release (6.1 coming soon!) but we will try our best. Again, thank you!

Hi @kahlonel - we've discussed internally and we're going to greatly simplify the linker files in future releases.


examples/qm9_nn_conv.py   ValueError: too many values to unpack (expected 2)

🐛 Bug

To Reproduce
Steps to reproduce the behavior:
python examples/qm9_nn_conv.py
Using a pre-processed version of the dataset. Please install rdkit to alternatively process the raw data.
Traceback (most recent call last):
File "/home/ymq/github-private/pyg/pytorch_geometric/examples/qm9_nn_conv.py", line 52, in
dataset = QM9(path, transform=transform).shuffle()
File "/home/ymq/github-private/pyg/pytorch_geometric/torch_geometric/datasets/qm9.py", line 94, in init
super(QM9, self).init(root, transform, pre_transform, pre_filter)
File "/home/ymq/github-private/pyg/pytorch_geometric/torch_geometric/data/in_memory_dataset.py", line 52, in init
pre_filter)
File "/home/ymq/github-private/pyg/pytorch_geometric/torch_geometric/data/dataset.py", line 102, in init
self._process()
File "/home/ymq/github-private/pyg/pytorch_geometric/torch_geometric/data/dataset.py", line 154, in _process
self.process()
File "/home/ymq/github-private/pyg/pytorch_geometric/torch_geometric/datasets/qm9.py", line 116, in process
self.data, self.slices = torch.load(self.raw_paths[0])
ValueError: too many values to unpack (expected 2)

Expected behavior

Environment

OS:
Python version:
PyTorch version:
CUDA/cuDNN version:
GCC version:
Any other relevant information:

Additional context

I can not reproduce this, so I guess there went something wrong in the processing pipeline. Can you try to remove the /raw and /processed directories and run again?

Thx, I try it.


Tiny grammar and typo fix in README

I was called to action by "contentions" instead of "conventions," but I also restructured the sentence to make it feel a little bit better.

LGTM! Thanks for spotting it out!