unify option separator

Previously some options used underscore and some used minus to separate words.
Now they all use minus.

ah.... This commit makes waifu2x-snowshell & video2x does not work... T.T
I use underscore because waifu2x-caffe uses it also..

@YukihoAA 🙃 Ye I assumed it will break some scripts. But I also figured it's a simple change for everyone making scripts... the fact we had - and _ mixed randomly just was very annoying.


Enable SQL Server 2017 Agent on docker

Hi Team, I want to know whether Microsoft has launched image of MS-SQL Server 2017 Agent's image for docker or not. If not, what is the realize date? IF yes, can you send me the link, where I can find the installation steps.

Current thinking is that we will not have an image with Agent pre-built into it.  Please see/contribute to the discussion on this issue:  https://github.com/Microsoft/mssql-docker/issues/27
Note: that discussion is re: Agent, full text search, etc. on a Linux container.  If you are interested in SQL Server Agent in a Windows container, we know there are some issues with that and we don't have an ETA in the next six months to fix that.  We recommend using the Linux containers for now.


Print message if database directory is already initialized.

Container user is not notified if database directory is already initialized and new database users are not created. So now environmental variables in container for linking could be invalid and container user don't know about it.
For example when you run container with reattached data directory, you can specify different env variables (for example you don't know that data directory is already initialized) and you are not notified that database users were already initialized and database users specified by you weren't created.

LGTM please fix the minor nit

[test]

@omron93 thanks!


Woocommerce multilingual error on activate plugin

Base WPML (v<IP_ADDRESS>) with WPML String Translation (v<IP_ADDRESS>), WPML Translation Management(<IP_ADDRESS>), WPML Media(v2.5.2), Advanced Custom Fields Multilingual (v1.4.0) and Yoast SEO Multilingual(v1.0.1) - works fine without bugs.
Timber version 1.8.4
Fatal error: Uncaught TypeError: Argument 1 passed to Twig_Node_Expression_Filter::__construct() must be an instance of Twig_NodeInterface, instance of Twig_Node_Expression_Name given, called in /Users/lukasz/Desktop/git/off-district/web/app/plugins/woocommerce-multilingual/vendor/twig/twig/lib/Twig/ExpressionParser.php on line 483 and defined in /Users/lukasz/Desktop/git/off-district/web/app/plugins/woocommerce-multilingual/vendor/twig/twig/lib/Twig/Node/Expression/Filter.php:14 Stack trace: #0 /Users/lukasz/Desktop/git/off-district/web/app/plugins/woocommerce-multilingual/vendor/twig/twig/lib/Twig/ExpressionParser.php(483): Twig_Node_Expression_Filter->__construct(Object(Twig_Node_Expression_Name), Object(Twig_Node_Expression_Constant), Object(Twig\Node\Node), 14, NULL) #1 /Users/lukasz/Desktop/git/off-district/web/app/plugins/woocommerce-multilingual/vendor/twig/twig/lib/Twig/ExpressionParser.php(466): Twig_ExpressionParser->parseFilterExpressionRaw(Object(Twig_Node_Expression_Name)) #2 /Users/lukasz/Desktop/git/off-di in /Users/lukasz/Desktop/git/off-district/web/app/plugins/woocommerce-multilingual/vendor/twig/twig/lib/Twig/Node/Expression/Filter.php on line 14
The site is experiencing technical difficulties. Please check your site admin email inbox for instructions.

What I discovered is the fact I can't replicate it on php 7.3

@dudinio this is an issue based on a conflict with WPML's Twig version and our own. I've spoken with the developer and it will be resolved in 4.2.8 — expected very soon


fix inconsistent choice of init list constructor

On some compilers value{x} invokes initializer_list constructor, on others it is equivalent to value(x). This is very problematic, but this isn't something we can fix. On the other hand, we can make init list construction to be equivalent to value(x), if the size of init list is one. This commit does exactly that.
Fix #920

Hey good idea !

¿What if caller actually wants to produce an array with a single item? Some people may already be using code that supplies initializer_list explicitly expecting array to be produced.
void Pack(::std::initializer_list<::boost::json::value_ref> items)
{
    ::boost::json::value json{items};
    ::boost::json::array & array{json.as_array()};
    // do something with array...
}

And proposed change will break this code when only a single item is supplied.
Also i'm not sure about ::new(this) value (.... ¿Is an attempt to reuse storage of the object which lifetime hasn't started yet a well-defined behavior? ¿Will access to newly created object through reference to the old one be valid?

The proposed change is the only way I could come up with that would make the behaviour consistent. The problem of behaviour being inconsistent between compilers have been haunting us for years.
That being said, creating an array from one element init list is very easy:
std::initializer_list<value_ref> items = {x};
value jv = array(items);

or
value jv = array{x};

Also i'm not sure about ::new(this) value (.... ¿Is an attempt to reuse storage of the object which lifetime hasn't started yet a well-defined behavior? ¿Will access to newly created object through reference to the old one be valid?

How could there be a reference to an object that does not exist yet?

The proposed change is the only way I could come up with that would make the behaviour consistent.
However you make behavior of constructor taking initializer_list inconsistent. Potentially breaking existing code.

How could there be a reference to an object that does not exist yet?
In case if ::new(this), this is a pointer to the object being currently constructed. And if object here turns out to be not transparently replaceable then this pointer as well as any other names referring to the current object will become invalid. Also even if object is transparently replaceable, ::new(this) is dangerous in other ways since ::boost::json::value is not trivially destructible type.

However you make behavior of constructor taking initializer_list inconsistent. Potentially breaking existing code.

No, it will not make it inconsistent. It will be consistent with documented behaviour (which reminds me that I should have amended documentation). And yes, it will break existing code. So, I'm leaning towards temporary providing a macro to disable the new behaviour.

In case if ::new(this), this is a pointer to the object being currently constructed. And if object here turns out to be not transparently replaceable then this pointer as well as any other names referring to the current object will become invalid. Also even if object is transparently replaceable, ::new(this) is dangerous in other ways since ::boost::json::value is not trivially destructible type.

Ok, just to be sure I will replace new(this) with a different implementation.


[install script] Give a better error message if /etc/nix/nix.conf is not writeable.

Prompted by #402. We should at least print a better error message that includes or points to some documentation about how to add the garnix cache manually on nixos.

GitHub automatically closed this, but we still need this open until we update the version of nix-tool-installer used by garn.


Rename StateHandle to ReadSignal

Closes #299

Codecov Report

Merging #300 (4702f5f) into master (6dd47f4) will not change coverage.
The diff coverage is 90.00%.

:exclamation: Current head 4702f5f differs from pull request most recent head e6822bb.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6dd47f4...e6822bb. Read the comment docs.


Allow a global prefix for config field names

Hi Jeremy,
I like your config package a lot, minimalist and still covers 99% of the config use cases.
One thing I am missing is using a global prefix for field names. I deploy to k8s and in our environment, a large number of env vars are automatically injected into containers. It is very helpful therefore, to prefix env vars for instance with the app name. Also, with a prefix there is no risk using a prexisting (injected) name. Example:
MYAPP__DATABASE_PORT=5432

Would be used like
var c MyConfig
err := WithPrefix("MYAPP").From("config").FromEnv().To(&c)

Added "WithPrefix" funcs and a test for that.
Best regards, Chris

HI @cbndr, sorry for the late reply. I did not get an email for some reason. I'll check my settings.
https://github.com/JeremyLoy/config/blob/d0690eaabf1ae8a3c57719399b0dbfdfce8be5f2/example_test.go#L30
Does the above not fit your use case already? If not I'll consider adding another method

No worries =)
So you are suggesting to encase all config with a struct carrying the name of the app as a work-around?
TBH I'd prefer having a few LOCs for the prefix, as it is also more expressive when reading the code.

@cbndr I see your point now, I agree there would be a lot of benefit here.
What do you think about having a different To method? I would like to only parse config into memory a single time. So something like this.
builder := config.FromEnv()
configA := builder.ToOverload(&a, "prefixA")
configB := builder.ToOverload(&b, "prefixB")

Sure, that could work as well. Although I think the method name "ToOverload" is very self-explanatory. On top of that, From() could accept an additional variadic param to allow for an optional prefix.

Oh haha I didn’t literally mean ToOverload , just wanted to make it clear what it was
I don’t want to mess with From, since that is doing all the parsing. What about adding the variadic arg to To?

Added in v1.4.0!


LSP support to 3rd-parties

Hello @karthiknadig ,
I am a bit curious about this issue. Does it mean that the Python extension will allow using other contributed language servers besides Jedi and Pylance?

@trinhanhngoc This was to provide support tools using the following products:

This code generator for LSP types in various languages: https://github.com/microsoft/lsprotocol . This was to standardize and make it easier for Server implementers to ingest changes to LSP specification.
LSP types packages for various languages. These are concrete packages that we publish that LSP implementers can depend on

Python : https://pypi.org/project/lsprotocol/  : Used by pygls (general purpose LSP server)
Rust: https://crates.io/crates/lsprotocol

Template for VS extension for python based tools: https://github.com/microsoft/vscode-python-tools-extension-template . This template allows you to create an extension for VS Code, with tools running in python.

With the above three things, you could contribute a Language Server of your own. You can turn off the ones that are shipped with python extension ("python.languageServer" : "None"), and run one of your own. Note that this was never something that was blocked. The only thing the above 3 things did was to make it lot easier to create LSP based VS code extensions (see Ruff Extension a 3rd party Linting and formatting extension based on Ruff). The Jedi language server that we use is also based on the above packages (jedi-language-server)
If you want to create your own server and would like to use our template here is a video (live stream) where I show how to do it:

Part 1: https://www.youtube.com/watch?v=EHpFewLrEZo
Part 2: https://www.youtube.com/watch?v=9p_ceWPbl0Q

All of this was meant to be is a quick starting point to and move the interesting part of LSP development into Python or Rust.

@karthiknadig , Many thanks for the detailed explanation.


Logs available?

Hello,
I am trying to send messages to a Kafka broker installed in another machine but can't see much when messages fail. Is there any logging enabled where I could check its status?
Thanks,
Tiago

You should be able to see exceptions/failures inside the JMeter gui. The
kafkameter plugin sets any exception inside the result itself:
https://github.com/BrightTag/kafkameter/blob/master/src/main/java/co/signal/kafkameter/KafkaProducerSampler.java#L266
On Mon, Dec 11, 2017 at 5:21 AM, Tiago Kosciuk<EMAIL_ADDRESS>wrote:

Hello,
I am trying to send messages to a Kafka broker installed in another
machine but can't see much when messages fail. Is there any logging enabled
where I could check its status?
Thanks,
Tiago
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/BrightTag/kafkameter/issues/18, or mute the thread
https://github.com/notifications/unsubscribe-auth/AACsHtB-eQ8n7AlOLLFaC2Gvc4T6As8kks5s_RBSgaJpZM4Q9PNK
.


QARTOD.Location_test: Add a range from target feature

The present pull request is  adding three optional inputs to the location_test that define a target location (target_lon [degree_east], target_lat [degree_north]) and an acceptable distance from the target (target_range [m]). target_lon and target_lat can either be a single value or an array the same size as the lon and lat inputs.
The location_test output a SUSPECT flag if the distance from the target is exceeding the provided target_range.
As an example, such location_test can be useful to test:

The location of a profile versus a predefined station location
The location of buoy versus its deployment location

Although not necessarily considered to be used that way, it could also potentially be used to compare a mobile platform trajectory versus a predefined trajectory. A new tool distance_from_target is also added to the ioos_qc.utils module to compute the distance between two locations.
A series of tests were also added to the test_qartod module to test those new inputs.

Thanks @JessyBarrette! The doc-string of the location_test method could use a cleanup now. It is essentially doing three different tests now, correct?

are points within a bounding box (fail if not)
are subsequent points over a maximum allowed range (suspect if so)
are points further than a maximum distance from an anchor point (suspect if so)

It might make sense to separate these into three different tests and the result of the location_test be the aggregation of them? Maybe the user can flag which location tests they would like to use? Going to pass this through some other people but interested in your thoughts as well!

@kwilcox You're right about the different tests, yes!
Regarding how to structure the different tests. I think separating them like you suggest would make a lot of sense. If only one of the tests can be run at the time and the different tests are aggregated after, it can definitely make it easier to identify each test result, troubleshoot issues, and just make it cleaner to handle.
Another point maybe, I think each of those tests should have the potential to apply either a SUSPECT and/or FAIL result and leave it to the user to decide which one is best for them to apply.

@JessyBarrette I'm back on ioos_qc for a few days next week and will get to this!

@kwilcox sounds good we're all scrambling these days. I figured you were busy

@JessyBarrette sadly Kyle is no longer working on this and we ar trying to revisit the open PRs in ioos_qc. It seems that the only missing issue here is how to organize the tests, right? Is this something you are still wiling to work on?
PS: I'm not super familiar with the QARTOD manuals. Do you mind posting the manual/page this test is from so we can document it.

This is pretty old haha. From page 16 of the Manual for Real-Time Quality Control of In-situ Temperature and Salinity Data

I realize now this optional test do not match the description of the QARTOD Location test.
I do see the need for such test in some particular cases (ex: Buoy drifting from an initial target mooring location). But potentially this should not live within the QARTOD module.
I am open to the idea of either dropping this PR or moving this test to another module.

I do see the need for such test in some particular cases (ex: Buoy drifting from an initial target mooring location). But potentially this should not live within the QARTOD module.

I'll leave that to the new dev @iwensu0313. But I agree, we should not overload the qartod module with it and it is a valuable test to have somewhere.

@JessyBarrette I like your new test ideas as well. I think if we want to make amendments to the QARTOD tests, we would want to propose this to the IOOS community. @ocefpaf / IOOS shared that the manuals are moving to github now (qartod_manuals), which might make it easier to collect feedback and update the manuals more frequently moving forward.
I am only familiar w/ the QARTOD implementation in ioos_qc so far. But looks like there are many other types of QC modules in ioos_qc. I see that a couple of them are based on 'ocean observing type' (e.g. gliders, argo). Will have to take a look at how the modules are organized currently to see what makes the most sense. Feel free to propose a good location for this.
Maybe @lukecampbell you have some immediate thoughts?


test using other dataset

Thanks very much for the replicate, as I did not get good results on GANimation. Your work helped a lot. The test code for the pre-trained model uses the validation dataset of celebA as well, right? However, when I set the test dataset path as my own test dataset, I met many problems in base_dataset.py and data_loader.py. Could you check with that? Different problems turned out when I was debuging this, so I could not attach all the problems.

Hi @uniBruce , the code uses 'batch' settings for testing, so if you want to test on other datasets rather than CelebA or EmotionNet, you'll need to create a specific dataset Class by inheriting the base_dataset.py.  Basically, you can just copy celeba.py and modify a few lines of code to adapt to your own dataset. Then call your dataset class in data_loader.py.
Or you can just structure your own dataset as the CelebA I provided,  and named it as celeba.

Hi @uniBruce , the code uses 'batch' settings for testing, so if you want to test on other datasets rather than CelebA or EmotionNet, you'll need to create a specific dataset Class by inheriting the base_dataset.py. Basically, you can just copy celeba.py and modify a few lines of code to adapt to your own dataset. Then call your dataset class in data_loader.py.
Or you can just structure your own dataset as the CelebA I provided, and named it as celeba.

Thanks, I will try it.

Hi, it's me again. I noticed that you made the lambda_mask and lambda_tv both 0, could you explain it? Because these two parameters really brought me much trouble when I replicated the GANimation. The attention mask always saturates to 1. I used your celebA dataset to train GANimation as well, but the expression never changed.

Hi @uniBruce, from my point of view, these two parameters won't affect too much of the final results, as long as they are not set to some very large values.
Training with the code and dataset provided by this project, you should be able to get the similar reasonable results.
However, if you implement GANimation by yourself, and the expression never change in the testing status, do check the results in the training status. If the training results turn out well, then something may go wrong with the normalization layer. If you use instance_norm, do remember to set affine=False, track_running_stats=False. See https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix/issues/395 for more details.

Hi @uniBruce, from my point of view, these two parameters won't affect too much of the final results, as long as they are not set to some very large values.
Training with the code and dataset provided by this project, you should be able to get the similar reasonable results.
However, if you implement GANimation by yourself, and the expression never change in the testing status, do check the results in the training status. If the training results turn out well, then something may go wrong with the normalization layer. If you use instance_norm, do remember to set affine=False, track_running_stats=False. See junyanz/pytorch-CycleGAN-and-pix2pix#395 for more details.

Thanks a lot. I' ll check with that.

Hi, it's me again. I noticed that you made the lambda_mask and lambda_tv both 0, could you explain it? Because these two parameters really brought me much trouble when I replicated the GANimation. The attention mask always saturates to 1. I used your celebA dataset to train GANimation as well, but the expression never changed.

Hello,do you correct these problmes in the Ganimation rather than this ganimaiton_replicate?I meet the same problems in the original program from the paper but this replicate work doesn't meet.

Hi, it's me again. I noticed that you made the lambda_mask and lambda_tv both 0, could you explain it? Because these two parameters really brought me much trouble when I replicated the GANimation. The attention mask always saturates to 1. I used your celebA dataset to train GANimation as well, but the expression never changed.

@uniBruce Hello,do you correct these problmes in the Ganimation rather than this ganimaiton_replicate?I meet the same problems in the original program from the paper but this replicate work doesn't meet.

I tried a few times according to what the ganimation replicate author told me, but got almost no changes.


Ctrl breaks the ibus-rime and fcitx-rime

Since ibus-rime and fcitx-rime both have the same problem. I am guessing this is the librime problem.
librime version: 1.2.9
When in rime mode, type any character with any input method (pinyin, wubi) is okay until I just press ctrl or other ctrl-[x,c,v].
I need to restart fcitx-rime or in ibus to switch to EN and switch back.
Are there any ways to capture the keystroke to begin debugging this?

Are there any errors (lines beginning with "E") in /tmp/rime.ibus.INFO ?
You need to compile a debug version of librime in order to log the key strokes.

Update: I have the caps lock map to ctrl. I find normal ctrl is okay. But caps-ctrl will cause this.
In ibus-rime, if I press caps-ctrl, it breaks. After this, I can press shift to type again. But if I press caps-ctrl, nothing changed.
I use setxkbmap -option ctrl:nocaps to map capslock to ctrl.
I tried another method with xmodmap config:
clear lock
clear control
add control = Caps_Lock Control_L Control_R

and do xmodmap ~/.Xmodmap
It is still the same.
Still debugging.

By default Caps Lock key toggles Chinese / ASCII mode. That may be the problem. It must have sent a Caps Lock key code or triggered Lock state change.
If you need an extra Control key in Caps Lock position, make sure nothing related to Caps Lock key's behavior is left.

You mentioned pressing Shift key could reactivate Chinese mode, that proved it was deactivated as a result of the previous Caps Lock/Control key.
As your custom key map is not a supported use case, I would not consider it a bug on the librime side. I'll leave it to you to find a solution.

@qqldd Have you found a solution?

@lotem I don't need latin mode, how to disable it completely?


Setup keycloak to allow Google auth

This PR enables the UserProfile feature in KeyCloak to restrict emails user's can use to login.  Seems tests sometimes run into this bug: https://github.com/keycloak/keycloak/issues/15812
might be fixed in: https://github.com/keycloak/keycloak/pull/15813


Add pass rate metric

Add an accuracy metric as part of the evaluation output.
pass rate = num test passed / num tests

I would like to help with this!

See #60


Text Editor and TypeScript formatter does not respect editor.insertSpaces setting

Type: Bug
I'm working on a project that used spaces before and now we converted all spaces to tabs. Now we want to enable format on save with the builtin typescript formatter. Ran into following issues

Everytime when we open a file, it auto detects indentation and the editor status bar item says "Spaces: 4", even when the file is full of tabs.
Change it to Tabs from the quick pick will only work in current session, once the file is closed, it switches back to "Spaces: 4".
TypeScript formatter always uses spaces instead of tabs.

VS Code version: Code - Insiders 1.95.0-insider (Universal) (a016ec9b66ffdd3ff0f831768b8e75be008a54e4, 2024-10-09T05:04:08.601Z)
OS version: Darwin arm64 23.6.0
Modes:

System Info

Item
Value

CPUs
Apple M3 Max (14 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabledwebnn: disabled_off

Load (avg)
3, 4, 6

Memory (System)
36.00GB (0.11GB free)

Process Argv
--enable-proposed-api rebornix.anyllm --enable-proposed-api rebornix.lulu --crash-reporter-id 1ce5da70-91d5-46fb-a706-70ff08933f9c

Screen Reader
no

VM
0%

Extensions (23)

Extension
Author (truncated)
Version

esbuild-problem-matchers
con
0.0.3

vscode-eslint
dba
3.0.13

gitlens
eam
2024.10.905

EditorConfig
Edi
0.16.4

copilot
Git
1.237.0

copilot-chat
Git
0.22.2024100901

vscode-pull-request-github
Git
0.99.2024100904

vscode-mocha-test-adapter
hbe
2.14.1

vscode-test-explorer
hbe
2.22.1

vscode-pr-pinger
jri
0.0.6

remote-containers
ms-
0.389.0

remote-ssh
ms-
0.116.2024100715

remote-ssh-edit
ms-
0.87.0

extension-test-runner
ms-
0.0.12

remote-explorer
ms-
0.5.2024081309

test-adapter-converter
ms-
0.2.0

vscode-github-issue-notebooks
ms-
0.0.130

vscode-js-profile-flame
ms-
1.0.9

lulu
reb
0.0.2

simple-node-repl
reb
0.0.1

vscode-yaml
red
1.15.0

luna-paint
Tyr
0.16.0

vitale-vscode
und
0.0.17

(2 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscod805:30301674
vsaa593:30376534
py29gd2263:31024238
c4g48928:30535728
a9j8j154:30646983
962ge761:30841072
pythongtdpath:30726887
pythonnoceb:30776497
asynctok:30898717
dsvsc014:30777825
dsvsc015:30821418
pythonmypyd1:30859725
h48ei257:31000450
pythontbext0:30879054
accentitlementst:30870582
dsvsc016:30879898
dsvsc017:30880771
dsvsc018:30880772
cppperfnew:30980852
pythonait:30973460
g316j359:31013175
a69g1124:31018687
dvdeprecation:31040973
dwnewjupyter:31046869
impr_priority:31057980
nativerepl1:31134653
refactort:31084545
pythonrstrctxt:31093868
wkspc-onlycs-t:31132770
nativeloc1:31118317
wkspc-ranged-t:31151552
cf971741:31144450
e80f6927:31120813
defaultse:31146405
i21gd607:31141543
iacca1:31150324
notype1:31143044
showbadge:31139796
f8igb616:31140137

I don't have issues with VS Code stable, however I can't get it to work as expected when switching to a different profile. Thus I label this as "important" in case it's a regression.

Turns out I have a formatter setting using prettier in my users setting, and it's not override by the workspace setting.

I am not able to reproduce this. @rebornix Are you still seeing this problem?

We fixed this already. Closing it now.


added typescript type definition file

This PR add a typescript type definition to the repo.
closes #44

Great! Ping @plrdev?

Great! Ping @plrdev?

Thank you for doing this! @plrdev is this scheduled for release?

Hi @plrdev, any plan to include this in the next release? When can it be?


[BUG] Missing JS snippets for integrate contracts

Integrate contracts article has missing JS examples:

Hey @victorchimakanu, are you still working on this issue?

@thisisjoshford Im not , Guillermo reassigned it to Lyudmil

@thisisjoshford I'm not, guillermo reassigned it to Lyudmil

@flmel can you check this out with @victorchimakanu ? looks like the snippets are still broken

@flmel lmk if you can prioritize this as we have a new article on how to create frontends that relies on this and currently broken.


Remove CFBundleResourceSpecification from WatchKit App

Following an App Store submission the following response was received.

WatchKit App.app/Info.plist' contains the key ‘CFBundleResourceSpecification’. You will need to remove that key from the Info.plist at that location, then re-submit your binary.

I hope this should fix it.

Thanks :)


Removing prefixes for TMUX_FZF_*_FORMAT

Currently, session, window and pane formats are displayed after some prefix, like:
"#S:#{window_index}: $TMUX_FZF_WINDOW_FORMAT"

But then we can't remove session names even if we only want to see ${window_name}.
So I suggest removing those prefixes for TMUX_FZF_*_FORMAT so that users get full control:
"$TMUX_FZF_WINDOW_FORMAT"

Thank you.

The prefix is used as an identifier, this plugin need it to know the extract session/window/pane ID to switch to.
So in current implementation, it can't be removed.


Improve file savers

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (bf045da) to head (c60153f).

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #92   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           52        52
  Lines         1106      1099    -7
  Branches        89        89
=========================================
- Hits          1106      1099    -7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Text path rendering bug in react-native-svg

Minimal reproduction of text path rendering bug in react-native-svg: https://github.com/msand/RNSvgTextBug
Renders correctly in web / next.js, the text is on top of the path referenced in textpath
Renders incorrectly in native, text is below path (at least android, haven't tried ios)
To test android:
react-native run-android
To test web:
npm run dev

Try to use my pull request.

@ssssssssssss Actually, my fork is based on your fork for gradientTransforms, I've made them work in java already, still some work in obj-c. It also had some of the code from your text fork, but that seems to have caused the moving in y direction of the text in the toap01.svg example, and did nothing to the textpath around the circle, it is still inside the path when it should be outside.
At least, taking the extractText logic from the master branch / 5.1.8 version; moves the text on native closer to where it should be in the toap example. But it is still a bit off, compared to the reference from rendering the web version on chrome.

Also, it seems the the dx and dy values translate relative to the viewport instead of relative to the textpath.

@msand I see. I just fixed my use case and doesn't test textpath yet. Thanks for the tip.

I've added the rest of the examples from https://www.w3.org/TR/SVG11/text.html now as well, such that there is more to test with.

I wonder, why aren't the android.graphics.Canvas.drawText(char[] text, int index, int count, float x, float y, Paint paint) and android.graphics.Canvas.drawTextOnPath(char[] text, int index, int count, Path path, float hOffset, float vOffset, Paint paint) methods utilized?
https://developer.android.com/reference/android/graphics/Canvas.html#drawText(char[], int, int, float, float, android.graphics.Paint)
https://developer.android.com/reference/android/graphics/Canvas.html#drawTextOnPath(char[], int, int, android.graphics.Path, float, float, android.graphics.Paint)

And how the come svg acid test compliant https://github.com/BigBadaboom/androidsvg/ isn't used?

I've just pushed a new branch, fixing most of my issues and most of the conformance with the examples from the spec page.
https://github.com/msand/react-native-svg/tree/TextOnAPathLayoutRulesConformance


idk what's the name

What is your question?
what's the name that making icons up and down?

what are you talking abt?

Could you be a little more clear about that?  Like, show us a picture or something?

Like on the Dave and Bambi : Grapple mod

oh it’s those rotating icons.
There’s a lot scripts related to it, just search up that type of icon bounce and you’ll find it easily.


One idea per page form: Create a exemplar form

Acceptance Criteria:

Create an example form based on this Figma design
Implement state management that saves data in the browser.

Ensure the state is handled in a manner that is not embedded on each page to allow for different methods of state management

Consider creating as a mono repo instead of a single application. In many cases a "simple form" government service like a citizen applying for a benefit will also be connected to a sibling app that is for internal government workers to review and process those applications. We will creating patterns to support these application types as well in the near future.
Has to include a repo for React

@ArakTaiRoth lets discuss the two items under the "potential" heading to see how we can either create issues for them of fit them into an existing issue.

I have removed Angular support for the exemplar


update readme to reflect angular 2 final not rc6

Angular final is out!

I upgraded locally and it worked just fine. also update the readme to reflect correct version

@crh225 it was upgrade to 2.0.0 Final this morning after RC7 too, Readme was just outdate, which is updated now :)


Will flutter support functions similar to aspectJ in Java to implement AOP?

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Use case
I now need to implement a non-intrusive buried point system, so I need dart to support AOP
Proposal
I need flutter support functions similar to aspectJ in Java to implement AOP

There was some discussion around this in https://github.com/flutter/flutter/issues/36738.
But it seems like some work will have to be done in dart itself. You should probably file an issue on the dart-sdk repo.
Closing from here.
Thank you


ListView has some extra padding-top when transitioning "back" to it on iOS

I've created an Angular 4/NativeScript app which is working great except ListViews all seem to gain extra padding-top when returning to them from another screen, and only in the transition.
As soon as the "navigatedTo" event is fired, the padding-top disappears and all is well.
I've attached a tiny project demonstrating the issue, the ListView has a blue background colour which is visible only when tapping "Back".
If this is the wrong repo to raise this in, apologies. I'll continue to try and work out where the padding is getting added.
testlist.zip

Hi @adamauckland,
Thank you for reporting this issue and for the attached sample project,
We reviewed your case and were able to reproduce this behavior only on iOS 11. I am attaching  GIF file was the problem is demonstrated.
For further info, please keep track on the issue.

The issue is also reproducible with a non-Angular project as posted here - closing this issue as duplicate and as it seems that the issue is related to the constraints in all NativeScript projects and not only in Angular.
@adamauckland  @tsonevn please track the linked issue for updates.

Thanks everyone! Great work!


Update index.md

There was some information that was missing, and I think it´s important to know

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Please use PR titles which explain what you are changing instead of "update index.md". If it is a translation, please also indicate translation: language name.  This let's the reviewer quickly know what kind of contribution you have made.
Thank you

Congrats on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 📝


Unassigning a delivery service request that is already unassigned results in null

I'm submitting a ...

[X] bug report
[ ] new feature / enhancement request
[ ] improvement request (usability, performance, tech debt, etc.)
[ ] other

Traffic Control components affected ...

[ ] CDN in a Box
[ ] Documentation
[ ] Grove
[ ] Traffic Control Client
[ ] Traffic Monitor
[X] Traffic Ops
[ ] Traffic Ops ORT
[ ] Traffic Portal
[ ] Traffic Router
[ ] Traffic Stats
[ ] Traffic Vault
[ ] unknown

Current behavior:

When a delivery service request is already unassigned, and sending a PUT request to deliveryservice_requests/{{id}}/assign with {"assigneeId": null} in the body returns:
HTTP/1.1 200 OK
{
    "alerts": [
        {
            "text": "deliveryservice_request was updated.",
            "level": "success"
        }
    ],
    "response": {
        "authorId": null,
        "author": null,
        "changeType": null,
        "createdAt": null,
        "id": 4,
        "lastEditedBy": null,
        "lastEditedById": null,
        "lastUpdated": null,
        "deliveryService": null,
        "status": null
    }
}

Expected / new behavior:

The response for when a user is assigned is the same as the response when a user is unassigned, the only difference is that the unassigned response output does not include the assigneeId and assignee key.
The Response should be:
HTTP/1.1 200 OK
{
    "alerts": [
        {
            "text": "deliveryservice_request was updated.",
            "level": "success"
        }
    ],
"response": {
        .
        .
        .
        },
        "status": "submitted"
    }
}

Minimal reproduction of the problem with instructions:

Anything else:

Anybody know if this is a regression?

Anybody know if this is a regression?

I doubt it. Probably always been this way.


c++: assert (written == len) is not informative error message for write failure

Description
Currently we assert that the write succeeds in FileWriter, here:
https://github.com/foxglove/mcap/blob/d850fc5938e67305a93c58d907a1a20f394cb8ed/cpp/mcap/include/mcap/writer.inl#L55
This is an error that can occur in production. if the underlying storage medium fills up, and the user needs some kind of trail to debug why.

Version: v0.6.0
Platform: Ubuntu Linux

Steps To Reproduce
Create a tmpfs with a limited max size, try writing past its size limit.

Expected Behavior
Some kind of "storage is full" error
Actual Behavior
"Assertion failed (size == written)"

Is the storage medium filling up the only possible cause of this error?

No, this generalizes to all the errors that could result from calling fwrite. On linux, there's a list here: https://man7.org/linux/man-pages/man3/fputc.3p.html

Got it. Is the idea that we check for size != written and then call errno() + strerror()?

Yes, modulo thread-safety concerns. We may need some OS-specific stuff here.

errno() on Linux uses thread-local storage. I don't know about other platforms, and it will need some sort of #ifdef for Windows I imagine.


Not working at all under Windows 7

A colleague of mine has been trying to get DDrawCompat working on his system for a while, but it never seems to work for him.
I asked him for a debug log and just by glancing at it I'm not entirely sure what's going on, but my bet is that he borked some important system files along the way and DDC is struggling to hook somehow.
Could you take a look at it? Thank you very much
OS: Windows 7
GPU: GTX 960
CPU: 3rd gen I5
ddraw log

I have no idea, but it's definitely not a generic Windows 7 issue, because the hooking mechanism works even in a Windows 7 VM (I just double checked).
Is there a dbghelp.dll or dbgeng.dll in his game directory? If yes, try removing those. If not, please check the version numbers of those files in C:\Windows\SysWOW64. Maybe I can reproduce it with whatever version he has there.

Nothing special going on in the game's folder itself, so here's the details of those specific files:
dbgeng
dbghelp

That's the exact same version I have in my VM, so unfortunately it doesn't help.
Let's just try to skip that problematic call. In theory, the result should be a constant anyway.
ddraw.zip (diff.txt compared to v0.5.2)

There you go:
ddraw log

Attempt nr. 2: ddraw.zip (diff.txt compared to v0.5.2)

Still crashing sadly
ddraw log

Thanks, at least the extra logs provide a bit more insight. There are a number of suspicious modules loaded:
C:\Program Files\Prio\prio32.dll
I assume this comes from here: https://www.prnwatch.com/prio/
I tried to install it on my VM, and sure enough, it gets injected into the process, but it doesn't seem to cause the hooking to fail.
C:\Windows\system32\d3d9.dll
C:\Windows\system32\d3d8thk.dll
C:\Windows\system32\dbghelp.dll
These are not loaded on my VM, at least not before the hooks are installed. Something must be causing them to be loaded. I tried changing ThrashDriver to dx9 in nfs4.ini, but that didn't matter either. Nevertheless, it would be good to share the nfs4.ini file to sync our settings.
C:\Users\PDA\Downloads\Need For Speed - High Stakes\DINPUT.dll
What about this one? It must be some other hook, that could very well be interfering. Where does it come from?
Is this issue present only with NFS games, or with every ddraw game in general?

Good news: I managed to reproduce the issue after installing SilentPatch mentioned here: https://www.pcgamingwiki.com/wiki/Need_for_Speed:_High_Stakes#SilentPatch
Looks like this is what provides the dinput.dll file mentioned above.
The issue happens on Windows 7, but not on Windows 11. Anyway, this should at least make debugging it significantly easier.

Nice!
Yeah that's it, the dinput is ASILoader for his patch.
We use a custom plug&play package of the game optimized for multiplayer in the RetroRacingPoint discord, I have it set to dx7+DDC by default and it runs flawlessly for the vast majority, except for him and some other Windows 7 user  that just crash on boot.

So, the problem is this dinput.dll statically links to dbghelp.dll, but dbghelp.dll's DllMain doesn't get called before ddraw.dll's DllMain. It's supposed to create a heap with HeapCreate, which is later used by HeapAlloc in SymInitializeW, which itself is invoked by dbgeng.dll from IDebugControl::WaitForEvent. But because DllMain and thus HeapCreate is not yet called, HeapAlloc ends up getting called with a null pointer as its first argument, which causes an access violation error that breaks the debugger engine.
I don't see a good solution other than linking statically to dbgeng (which itself statically links to dbghelp), which should ensure that dbghelp is initialized before ddraw. But this solution has unfortunate downsides too. For example, some games, such as the GOG version of Settlers 4 has an outdated version of dbghelp next to the main executable, which now prevents the game from launching when DDrawCompat is used. I'm not sure how to work around that anymore.
Anyway, here's the statically linked version, which seems to work on Windows 7 even with the SilentPatch installed:
ddraw.zip (diff.txt compared to v0.5.2)

That did the trick! Worked first try for him.
Thank you for looking into it!

Fixed in v0.5.3 by removing the dbgeng.dll dependency. It's different than the fix that was posted here, but it should still work.


I have a question, about the warning text that comes up when running the tim781 driver.

Hello,
The environment is ros2,humble
My question is, can I ignore the warning text that comes up when I run the tim781 driver? Also, what is the solution to this warning statement?
input
ros2 run sick_scan_xd sick_generic_caller ./src/sick_scan_xd/launch/sick_tim_7xx.launch
The warning statement that comes up
[INFO] [1732171496.635693137] [sick_scan_xd]: 1 / 6 packets dropped. Software PLL not yet locked.
[INFO] [1732171496.698718534] [sick_scan_xd]: 2 / 6 packets dropped. Software PLL not yet locked.
[INFO] [1732171496.766455423] [sick_scan_xd]: 3 / 6 packets dropped. Software PLL not yet locked.
[INFO] [1732171496.833415781] [sick_scan_xd]: 4 / 6 packets dropped. Software PLL not yet locked.
[INFO] [1732171496.899821259] [sick_scan_xd]: 5 / 6 packets dropped. Software PLL not yet locked.
[INFO] [1732171496.966854247] [sick_scan_xd]: Software PLL is ready and locked now!
[WARN] [1732171497.033300821] [sick_scan_xd]: 7 of 7 packets dropped (100.0 perc.), maxAbsDeltaTime=0.000
[WARN] [1732171497.033372803] [sick_scan_xd]: More packages than expected were dropped!!
Check the network connection.
Check if the system time has been changed in a leap.
If the problems can persist, disable the software PLL with the option sw_pll_only_publish=False  !
I saw your next issue.
「https://github.com/SICKAG/sick_scan_xd/issues/232」
I tried checking the system time and re-installing the package, but could not solve the problem.
I tried making changes to the OPTIONS but to no avail.
Also, is the input for sw_pll_only_publish=False correct for sick_tim_7xx_launch?
I would appreciate it if you could tell me what operation to perform.

Thank you for your feedback. The warning occurs when there is a significant delay between

the system time stamp when a lidar telegram is received, and
the expected time stamp calculated from lidar ticks by the Software PLL.

Such a delay can be caused by high network traffic and can lead to inaccurate time stamps. You can tolerate network latency and these messages if they occur occasionally. However, the warning "7 of 7 packets dropped (100.0 perc.)" indicates a problem with timestamps and network latency.
You can disable the software PLL and timestamp warnings with the sw_pll_only_publish:=false option; in this case the timestamps are the system timestamps when the scan data is received, not the lidar measurement timestamps. Use this option (i.e. sw_pll_only_publish:=false) if you do not need the precise measurement timestamps. Otherwise, check the network latencies if the problem occurs more often. Make sure you are using the latest sick_scan_xd release and firmware version.

Does doing sw_pll_only_publish:=false have a significant impact on SLAM?
I was able to disable the warning if there is no impact and I would like to run it as is.

Using option sw_pll_only_publish:=false, the measurement timestamps are replaced by the time of receiving the scan data from the lidar. If the network latencies are small, the impact on SLAM should be small.
The following examples may show the effect of disabling the software pll with the sw_pll_only_publish:=false option:

The network has a jitter of 1 millisecond. A robot or carrier moves at 2 m/s (7 km/h) or 2 millimetres within the time jitter. An inaccuracy of 2 millimetres is acceptable under normal conditions.
The network has a high jitter of 100 milliseconds. The carrier moves at 14 m/s (50 km/h), i.e. 1.4 metres within the time jitter. This is probably too much for navigation.

I suggest the following steps:

Use sw_pll_only_publish:=false and check if the whole system including SLAM works as expected.
Check the network latencies. If you are experiencing significant delays, these delays may be affecting not only SLAM, but possibly other system components as well.

Yes, sir. Thank you very much. I will try to implement it.


unplugin-vue-components vs unplugin-auto-import [question]

isn't the components tool a subset of auto import ? or does the auto import only does so for vue/react api ie useState

Vue components need registration and do not work like ES module import. auto-import is for APIs, and also React components since they use simple module imports for components.
See https://antfu.me/posts/journey-with-icons-continues for more details.

since then... i saw your vitesse repo... very impressive stuff 👏


Import Feature flag modal implemented

This story can go ahead and add the [showMenuButton]="true" option in the root sections card and wire this up so we can actually launch it with the import button and take a look. A screenshot would be good to add onto the PR as well.

Here's how the modal looks now

i'm gonna hold off on this one for a minute. I think we need to talk about the specifics with @amurphy-cl and the rest of the team, there are some requirements we should walk through as a team, and I'm thinking there's some common elements here with some other planned components: https://www.figma.com/design/GaKw3nDscTnMEOzIf4CAa7/UpGrade-UI-Latest-14-(Final)?node-id=8283-9405&t=Yu13lzUFdS34DkqM-0


Error when running from an NPM script

Environment
MacOS 11.4
Node 16.6.1
@callstack/repack: 2.0.0-beta.7
concurrently: 6.2.1
Description
When running the start command npx react-native webpack-start from an npm script with concurrently in my package.json I'm getting the following error :
TypeError: process.stdin.setRawMode is not a function
[1]     at Object.start [as func] (/Users/.../@callstack/repack/dist/commands/start.js:75:19)

My package.json start script :
"dev:ios": "concurrently \"yarn ios\" \"npx react-native webpack-start\""
Reproducible Demo
Setup a basic project following the docs and use my script

Can you try adding --no-interactive to npx react-native webpack-start?

Thank you @zamotany this solved my issue. For reference on why this was an issue : https://nodejs.org/api/tty.html


[NEW ICON] IPFS

Skill Name
IPFS
Why?
It's a popular decentralize storage protocol
Reference Image

Added in 59059d9d1a2c092696dc66e00931cc1181a4ce1f!


Drop PHP 5.5 Support

This library had still support for PHP 5.5. This PR removes the PHP 5.5 version from Travis Configuration and also requires PHP 5.6 as minimum version for composer

@zf2timo this PR contains a lot of changes and some rollback, can you open a new PR removing only the support of PHP 5.5 in travis and composer? Thanks!

@ezimuel it's not BC Break, so the label can be removed here

@zf2timo closing this in favor of #282. @webimpress is fixing some Travis issue and removing the support of PHP 5.5.
Thanks anyway for your contribution!


Add Gankro to Try Team

GO TEAM 🎉

This change is

@bors-servo: r+

:pushpin: Commit 5604eeb has been approved by jdm

:hourglass: Testing commit 5604eeb092fe1369d1a604f11f35d94df0222452 with merge bb89bc9e51e2ad445c25f1638a2d1c919e8c2d43...

:broken_heart: Test failed - status-travis

:sunny: Test successful - status-travis
Approved by: jdm
Pushing bb89bc9e51e2ad445c25f1638a2d1c919e8c2d43 to master...


document Redis' default key eviction policy problem

Coverage remained the same at 96.89% when pulling 8af6b101dfe24df6bb2b0b009262706819331c8d on stefantalpalaru:redis-limits into c578cbff8a931d8bec3c3e026c8908cb61bf71d4 on BertrandBordage:master.

Coverage remained the same at 96.89% when pulling 8af6b101dfe24df6bb2b0b009262706819331c8d on stefantalpalaru:redis-limits into c578cbff8a931d8bec3c3e026c8908cb61bf71d4 on BertrandBordage:master.


[Do not merge] Out of source

launch jenkins icon

balfrin
:green_circle: unit testTest:green_circle:summary :green_circle: integration testTest:green_circle:icon-spack_info :green_circle:icon-spack_spec :green_circle:icon_serialization=create_claw=std-spack_spec :red_circle: system testTest:red_circle:Icon-install_2_6_6_gcc :red_circle:Icon-install_2_6_6_nvhpc :red_circle:Icon-install_nwp_gpu
WARNING: Serial tests did not run for system tests

daint
:green_circle: unit testTest:green_circle:summary :green_circle: integration testTest:green_circle:icon-spack_info :green_circle:icon-spack_spec :green_circle:icon_serialization=create_claw=std-spack_spec :red_circle: system testTest:red_circle:Icon-install_2_6_6_gcc :red_circle:daint_cpu_cce :red_circle:daint_cpu_gcc :red_circle:daint_cpu_nvhpc :red_circle:daint_cpu_nvhpc_out_of_source :red_circle:daint_gpu_nvhpc :red_circle:daint_dsl_nvhpc
WARNING: Serial tests did not run for system tests


Content Item Cloneable property

Is there any way to prevent a content item from being cloned?
Maybe having a setting "Cloneable" alongside Creatable, Listable, ...

Yes ... and the default value should be no.

Agreed that there should be a setting to prevent cloning of a content item, however as a workaround, you can hide the Clone link in the Content List for a particular Content item in Placement.info
<Match ContentType="TypeThatYouDontWantToClone">
    <Match DisplayType="SummaryAdmin">
      <Place Parts_Contents_Clone_SummaryAdmin="-"/>
    </Match>
</Match>

Good to share

Why should the default value be no?

It is not a catholic point of view but so many problem cloning elements which are badly prepared to cloning in one of their parts . And again the DB is broken,   often easy to repair on a dev db but on a large production DB....

Please file bugs for these specific issues that happen for badly prepared elements.

They are in modules, remember there is an Orchard Gallery :)

Right, I understand that. What causes them be badly cloned?


Space-time matrix: Subset function

Define a member function of class SpaceTimeMatrix, to return a subset of itself based on a specific criterion.
Possible criteria are (priority high to low):

[ ] Within a spatial polygon
[ ] Below/above a certain threshold of a temporal attribute. At this stage, we can implement amplitude dispersion as a start.
[ ] Below a specific density, e.g. 1 point in every 100m.

A placeholder has been added to stmat.py
An example result:

# Load polygon/multi-polygon using geopandas
import geopandas as gpd
polygon = gpd.read_file('example_polygon.shp')

# Assuming an `xarray.Dataset` exists as `xr_stm`

# Subset with polygon
stm_xr_subset = xr_stm.stm.subset(polygon) # Return all the points within the polygon

# Subset with amplitude dispersion
stm_xr_subset = xr_stm.stm.subset('amplitude_dispersion', '>0,8') # Return all the points with amplitude dispersion >0.8, can discuss syntax

# Subset with density
stm_xr_subset = xr_stm.stm.subset('density', '200m') # Return points with a 200m/point density

Freek would get the SkyGeo Imp for density subsetting


openEEW Sensor sometimes doesn't boot

On plugging in my device with a Version150 it sometimes won't boot up.
It continues to try, however I have to unplug, wait a few seconds, then re-plug it in.
Sometimes I have to do this a couple of times before it boots.
The USB is plugged into either an Ubuntu  20.04LTS running through a self powered hub, or a Windows 10 through its own self powered USB hub.
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun  8 2016 00:22:57
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun  8 2016 00:22:57
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun  8 2016 00:22:57

With a terminal running, on Windows and plugging the device in the boot looks like this
ets Jun  8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
OpenEEW Sensor Application
ESP32 WiFi interface ready
Stored networks : 1
ESP32 WiFi started

With a terminal running, on Windows and plugging the device in the boot looks like this
ets Jun  8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
OpenEEW Sensor Application
ESP32 WiFi interface ready
Stored networks : 1
ESP32 WiFi started

I am having a similar issue. After ADXL configuration is stops:
Total/Average X=1379722/2155; Y=162417056/253776; Z=-9311712/-14549
ADXL355 Accelerometer activated
ADXL355 Accelerometer first samples discarded
Finished accelerometer configuration
Yet, if I unplug ethernet, it works and starts sending.
On Thu, 29 Apr 2021 at 13:16, neilh @.***> wrote:

On plugging in my device with a Version150 it sometimes won't boot up.
It continues to try, however I have to unplug, wait a few seconds, then
re-plug it in.
Sometimes I have to do this a couple of times before it boots.
The USB is plugged into either an Ubuntu 20.04LTS running through a self
powered hub, or a Windows 10 through its own self powered USB hub.
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun 8 2016 00:22:57
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun 8 2016 00:22:57
rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
ets Jun 8 2016 00:22:57
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/openeew/openeew-firmware/issues/19, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABP5GHNYFXFPRWERHOMSZI3TLGPAFANCNFSM432NJKYA
.

--
Andres Meira
m +52 (55) 12246468
*skype *andresmeira

These crash loops seem to occurring before the firmware even gets control.  Yet other times when the ESP32 powers up, it works fine?
 rst:0x3 (SW_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
https://github.com/espressif/esp-idf/blob/release/v3.0/components/esp32/include/rom/rtc.h#L80

See LED brownout discussion in https://github.com/openeew/openeew-firmware/issues/23
I believe this issue will be fixed by https://github.com/openeew/openeew-firmware/commit/50cac2b5ec3719eaa5aca7b0aad1563a103dca4f

Hey a lot of late night coding. Thanks so much.
It worked on my device CCCC.
Fingers crossed


copy breaks watched files

I'm having an issue where I have a server watching (using fs.watch()) a JSON file for changes, and it loads the file and reads it into an object when it changes. If I copy over the JSON file with cp on the command line, it gets parsed and works fine. But using a grunt-contrib-copy task in grunt causes the watcher to maybe trigger too early or something, and JSON.parse() gives an error even though the file is fine. And it works when I just use cp. So something about the way grunt-contrib-copy is copying the file confuses the file watcher. I suppose I can just use cp for now, but it would be nice if there were a fix for this.

Actually it does happen sometimes with cp....

Apparently it's a larger issue with fs.watch, so I switched to using fs.watchFile, which polls for changes every five seconds or so, that works much better.


allow connecting more distant elements to the same toggle

There are use cases for connecting more distant elements with the same toggle.  For example, typical tab component markup might look something like (in very abbreviated form, with names I just made up):
<tab-view>
  <tab-strip>
    <tab/>
    <tab/>
    <tab/>
  </tab-strip>
  <panel-set>
    <panel/>
    <panel/>
    <panel/>
  </panel-set>
</tab-view>

With this sort of markup, it's hard to model the three tabs using three separate toggles, each with two states, connected into a toggle group.  (They could be modeled as a single 3-state toggle, but that has disadvantages, particularly when reordering, adding, or removing tabs.)
It would be desirable to have a way to use a group of 2-state toggles for markup like this.

cc @bramus

Looking at the component gallery for tabs, many implementations use a structure where the tabs and panels are no siblings of each other indeed.
With the current specced version it’s pretty difficult to implement this. The needed CSS for the example above to work, would look like this:
tab-view {
    toggle-root: tab 3 at 1;
}

tab:nth-child(1) {
    toggle-trigger: tab 1;
}
tab:nth-child(2) {
    toggle-trigger: tab 2;
}
tab:nth-child(3) {
    toggle-trigger: tab 3;
}

tab:nth-child(1):toggle(tab 1),
tab:nth-child(2):toggle(tab 2),
tab:nth-child(3):toggle(tab 3) {
    background-color: lightgray;
}

panel {
    display: none;
}
tab-view:toggle(tab 1) panel:nth-child(1),
tab-view:toggle(tab 2) panel:nth-child(2),
tab-view:toggle(tab 3) panel:nth-child(3) {
    display: block;
}

This does not scale, as it requires extra code for each tab that gets added. It also relies on counting DOM nodes to make it work.
Maybe some extension to toggle-visibility could make this easier, where it would also take the active toggle value into account.
A similar use-case would be a lightbox implementation where thumbnails somewhere in the DOM control the contents of a dialog element, which could be included somewhere else in the DOM.

First, here's the existing "alternating tabs" structure and style:
[code block]
Here's how it would look in the "grouped tabs" structure:
[code block]

What I don’t like about this second snippet it that it has a lot of duplication. The .tab toggle already opts into the group because it uses the same name --tab, but in your proposal it’s required to repeat all that info in the toggle-share attribute again:
.tab-view {
  toggle-group: --tab;
}

.tab {
 toggle: --tab;
 toggle-share: attr(data-share) group --tab, --tab;
}

.panel {
  toggle-share: attr(data-share) group --tab;
  toggle-visibility: --tab;
}

What I derive from this example is that each toggle has a binary state (1 or 0) but also wants to represent a certain value in the group when toggled on. Would it be sufficient to only define that value? I’m thinking of a toggle-value property to do this, which would make things much more simpler.
.tab-view {
  toggle-group: --tab;
}

.tab {
 toggle: --tab;
 toggle-value: attr(data-share);
}

.panel {
 toggle-visibility: --tab;
 toggle-value: attr(data-share);
}

The value for the toggle group is that of the active toggle in that group.
Maybe this toggle-value could also become part of the toggle and toggle-visibility shorthands?
.tab-view {
  toggle-group: --tab; /* Establish group */
}

.tab {
 toggle: --tab attr(data-share); /* I am a toggle. When active, the value attr(data-share) becomes the value of the toggle-group I have opted into. */
}

.panel {
 toggle-visibility: --tab attr(data-share); /* I am visible/invisible when a toggle with the value attr(data-share) is active/inactive */
}

The spoiler toggle example would then become this:
<spoiler-wrapper id=star-wars>
  <spoiler-warning>star wars spoiler</spoiler-warning>
  <spoiler-content>luke is his own father</spoiler-content>
</spoiler-wrapper>

<spoiler-wrapper id=star-trek>
  <spoiler-warning>star trek spoiler</spoiler-warning>
  <spoiler-content>Picard is Professor X</spoiler-content>
</spoiler-wrapper>

<button class=toggle data-for=star-wars>Show that Star Wars spoiler</button>
<button class=toggle data-for=star-trek>Show that Star Trek spoiler</button>

spoiler-wrapper {
  toggle-root: --spoiler attr(id); /* Establish toggle root. When the toggle active, the value for the root is attr(id) */
}
spoiler-warning {
  toggle-trigger: --spoiler; /* Activates/deactivates the --spoiler toggle. Because of how scoping works, it’ll find the parent  spoiler-wrapper */
}
spoiler-content {
  toggle-visibility: --spoiler; /* I am visible/invisible when the toggle --spoiler is active/inactive */
}
button.toggle {
  toggle-trigger: --spoiler attr(data-for); /* Activates/deactivates the --spoiler toggle with the value attr(data-for). Because of how wide scoping works, it’ll find the spoiler-wrapper with the relevant toggle-root. */
}

A limitation I see with the above (both your and my versions) is that it’s only possible to automatically respond to a certain toggle value using the toggle-visibility property. You can’t use the automated values in selectors.
.panel:toggle(--tab foo) .spinner {
  animation: spin 1s infinite;
}

One could leverage the attribute that was set, but this breaks copy pasting.
.panel[data-share="foo"]:toggle(--tab) .spinner {
  animation: spin 1s infinite;
}

But maybe this is an edge case, that should not be covered. I mean, if one wants to specially style a specific element they would already need a specific selector for it anyway, without toggles even coming into play.

Since strings are allowed, and counter() can produce incrementing unique strings associated with sibling index, in the tabs example we could do some trickery to eliminate any need for the author to specify unique names

Yes! I like this! In the future sibling-index() could even further simplify the code.

What I don’t like about this second snippet it that it has a lot of duplication.

It doesn't need that additional info. If this is the only instance of this element on the page, then you can just do a global share. Scoping to a group is just required if you want to have multiple instances of the same component on the page.
I don't think I can reduce the duplication. The element hosting the toggle knows that the toggle is scoped to some group, but elements that share in it don't (and can't) know this, so they have to specify it manually so they know whether or not to limit their search to a group!
(I'll also challenge that it's "a lot" of duplication, fwiw. It's repeating the name of the group, that's it.)

What I derive from this example is that each toggle has a binary state (1 or 0) but also wants to represent a certain value in the group when toggled on. Would it be sufficient to only define that value? I’m thinking of a toggle-value property to do this, which would make things much more simpler.

I've given a lot of thought to this scenario and don't think it helps.
First, it's possible and meaningful for the toggles in a group to be multi-state. I've seen this in videogame UI, for example - a menu of options, where some options can be cycled thru several variants by clicking multiple times. So assuming each toggle is just binary isn't a reasonable simplification.
Second, this isn't actually a simplification. Rather than N toggles all controlled by a group, you get multiple elements claiming a value of an N-value toggle:

This requires a new concept - a toggle that doesn't know how many values it has up-front, or even what its current value is (because it depends on how many items claim a value within its scope). That's just reinventing toggle + toggle-group in a new shape!
It also requires a new type of toggle object in JS, which is just a specific value, so we can reflect this in the API.
You need to give each sub-item a unique value, even if they're not invoking the sharing ability. That's strictly worse than the current toggle + toggle-group, where unique values are only needed if you need to share.
A bunch of things need to now care about both toggles and toggle values. toggle-trigger, for example, needs to know how to trigger a specific value, but ideally without requiring the author to write specific values into their CSS. Avoiding this, again, ends up just making the "toggle value" equivalent to an independent toggle.

A limitation I see with the above (both your and my versions) is that it’s only possible to automatically respond to a certain toggle value using the toggle-visibility property. You can’t use the automated values in selectors.

No, my proposal specifically allows selectors to work with shared toggles. (I listed this as one of the requirements in the beginning!) That's why toggle-share has to be a new piece of persistent state, so we can update the internal data structures that selector-matching reads from, the same way we do with toggles themselves.
I think anything that doesn't do this is unacceptable, which is why I ended up having to reject exploring a value-based solution.

In the future sibling-index() could even further simplify the code.

Yup, indeed!

I've read through these examples a few times... and I'm concerned that they just feel more complicated than they should be.
One thing I was thinking might help in simplification (although I'm still not entirely sure how) might be to make the sharing go only in one direction rather than being bidirectional.  In other words, one element would share a set of toggles, and another element would use that shared set of toggles.
Something else that might help with simplification would be to only support sharing by sibling index and not support any named sharing.
It's also not clear to me that a separate share name is needed in addition to the toggle name.
Combining these ideas, perhaps this could be handled by a pair of properties that modify only the search algorithm for finding a toggle that is in scope.  Only the sharing property (and not the searching property) would need to specify the group to limit the scope of the sharing.
So I think then the "grouped tabs" example style from https://github.com/tabatkins/css-toggle/issues/46#issuecomment-1324304073 could instead look something like this:

foo

bar

foo content

bar content

The use of sibling-index as a keyword would allow extension to counters later if needed.

Oooh, these changes look interesting.
I do like the one-way sharing conceptually; I made it two-way mostly just to reduce the amount of unique new state things we need to track. In your proposal I need to expose both toggleShare and toggleFind on elements. That said, the conceptual model is probably a lot easier for authors to understand this way, so it's likely worthwhile. A toggle-find element just acts as if the shared toggle is visible to it, which is nice and simple.
All the internal complexity is still there, tho - dealing with collisions, etc.

Something else that might help with simplification would be to only support sharing by sibling index and not support any named sharing.

I don't think this would be great. Building in a sibling-index share method is certainly a great idea, as a lot of times it'll be precisely what you want and it'll be way easier to understand and use than my counter() hack, but I think having arbitrary buttons able to find toggles is still a useful ability, and I don't want to force authors into a specific markup structure. If they, for whatever reason, need to put additional elements before/between their tabs or their cards, it shouldn't break the feature and force them back into the weird hacks.
This probably implies that we want the share name to always be a string, syntax-wise, so we have space for built-in keywords like sibling-index. That'll make it stand out from the toggle name in the property value, too, which might be a good thing.

Only the sharing property (and not the searching property) would need to specify the group to limit the scope of the sharing.

I'm not sure how we avoid having the finding element specify the group as well. We need to know whether to do a global search or a limited search; and if limited, what group to limit it by. My intention is that the toggle-group it's scoped to does not have to have the same name; I'm reusing the group for an unrelated purpose to the "only one active at a time" thing it does currently. Again, I could invent a new 'toggle-share-group' to more clearly tie it together, but I think a lot of the time it'll be fine. That said, I could def allow omitting the group name to imply it's the same name as the toggle, which'll be the case most of the time.
(I want to similarly relax the same-name restriction for the core toggle-group use-case, too, and would use the same syntax - a plain group means, as today, that the group has the same name as the toggle, but group <<dashed-ident>> would explicitly name a group.)

(Maybe group(<<dashed-ident>>) instead, to more obviously tie it together and imply specialization.)

I'm not sure how we avoid having the finding element specify the group as well.

I'm suggesting that the finding work just like searching for toggles normally does (looking at ancestors and their previous siblings, all the way up the tree), except that once you encounter an element with toggle-find:

the search carries the added information of the index in addition to the name
the search looks at the toggles shared to the element being searched (which carry the added index information) instead of the toggles established by that element

Thus when you reach the element with the toggle-group, assuming it's an ancestor or a prior sibling of an ancestor, you'll find the toggle.

I'm not sure I understand. How does the toggle-find annotate the search such that it knows to look only within a particular group? Or does it just look for all shared toggles with that name, then filter based on the sharing group?

It just looks for all shared toggles with that name, with no filtering except for the index-matching.

How does that work with, say, two tab-panel elements both using --tab for their stuff? The second card will be looking for the second label, but it'll find the second label from both panel sets?

So they're all global? That's not workable, then - it means you can't have two tab-panels on the same page without inventing a unique toggle name for them and updating all your CSS.

I think it would find the appropriate one, since it would be a search just like the search for toggle groups.  (Even though it's possible that both sets of tab panels would be in scope, if one is a descendant of the other, or if they're siblings of each other and the first one uses wide-scoped groups rather than narrow-scoped groups.)
I'm saying that when you hit toggle-find, you continue searching the same sequence of elements (parent followed by its prior siblings, then its parent followed by ...), and continue to follow the rule that you stop the search when you first encounter a match.

I'm not sure I see the connection. Searching for toggle groups involves just looking for an ancestor with a particular toggle-group, then you're done. If you need all the toggles from a group, you can search downwards from the group element.  You never directly have to look from one toggle in the group to another toggle in the group.
But here that's exactly what you'd have to do - not an ancestor search, but an all-relatives search, for a toggle that's being shared in a consistent way. The "parent + previous siblings" search won't ever find the shared toggle (except in circumstances where it probably didn't need to be shared in the first place).

What I'm proposing would be a separate use of toggle groups from the use for grouping.  The idea would be that toggle-share attaches the shared toggles to the relevant group, and toggle-find changes the search to search for toggles shared to a group.  So the modified search would find the toggles because those toggles have been attached to the group.
(Not sure how much back-and-forth we should have about this particular side-discussion here, or whether we should move it elsewhere, though...)

Okay, so you're suggesting that the element holding the toggle-group is aware of the shared toggles underneath it that are scoped to it, so you don't need to guess which toggle-group might be holding a matching shared toggle for you, you'll just see it as you proceed up the scopes.
I suppose that works. It does still mean that you can't have a global and a grouped shared toggle with the same name, if you want something that happens to be inside the toggle-group to refer to the global one. But maybe that's a sufficiently rare case that it's justified by the reduction in verbosity from the toggle-find not needing to say it's group-scoped as well?

(One side note:  this sibling-index idea is probably a good bit simpler to implement than the idea in w3c/csswg-drafts#4559, because I think that idea requires that the sibling index be numerically calculated into the computed value, which has a bunch of interactions with various optimizations that exist in style engines today, whereas this proposal could allow sibling-index to be part of the computed value representation as a keyword.)

I realized in a conversation today that one disadvantage of doing this is that it enables patterns that work badly when the CSS is removed.  In other words, representing tabs with markup that has heading-section-heading-section-etc. still produces content that is likely to function when the CSS is removed and the markup is presented linearly.  However, representing tabs with markup as in https://github.com/tabatkins/css-toggle/issues/46#issue-1441189478 doesn't work very well when the CSS is removed.
On the other hand, the heading-section-heading-section-etc. markup is harder to style because it can require hacks to reorder.
In other words, I'm not happy about either option here. :-/

Yeah, making header/section/header/section work properly requires the work in flowing disparate elements to the same grid cell that should now be possible in GridNG in Chrome, and hopefully in other browsers too. Then tabs can be done with a two-element grid, with all the tabs visible in the first cell and all the panels overlapping in the second cell.


Remove a double slash in the HTTPS redirection when Let's Encrypt is enabled

Before:
$ curl <IP_ADDRESS>:3001
Found.

After:
$ curl <IP_ADDRESS>:3001
Found.

Fixes #5536

Codecov Report

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

@@            Coverage Diff            @@
##             master    #5537   +/-   ##
=========================================
  Coverage          ?   37.57%
=========================================
  Files             ?      319
  Lines             ?    46949
  Branches          ?        0
=========================================
  Hits              ?    17643
  Misses            ?    26795
  Partials          ?     2511

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 0bd802e...6bd01f9. Read the comment docs.

Can you please backport to 1.6 branch?

@lafriks Done in #5539


Message Cleanup

Description
VS and Rosyln are now providing better analysis of our code!  But now there are ~42 messages in the code base that need to reviewed

One example:

Steps to reproduce

Open Code w/ VS 2017 (15.7.3) or later

Expected behavior

No messages

Actual behavior

~42 messages

Would you accept a PR that addressed these messages?

Although these are just suggestions, I guess it is good to clean up.

@singhsarab It seems that no body's currently working on it...
Taking this issue :)


Add lora or checkpoint model

Is it possible add a lora or checkpoint model, and use it to generate images?

Is it possible add a lora or checkpoint model, and use it to generate images?

yes. Checkout https://github.com/monk-after-90s/ai-toolkit

I tried to use load_lora_weights but it seems that the weights are ignored. How can I set the lora scale?


Using worldtool in custom dimensions

I'm using your worldtool for a build project and I've come across the very specific bug that it cannot be used in custom dimensions. I'm not sure how fixable this problem really even is given how specific it is.
In my screenshots below you can see my selection area, selecting a block, hitting enter, and then it resulting in placing zero blocks. Even though doing so outside of my custom dimension in the same singlerplayer would results in it working fine

Like I said I'm not sure how you would go about fixing this as it doesn't seem like your functions do any dimension-specific calls, but I wanted to bring it to your attention nonetheless because I found it interesting.
Thanks for your hard work! This tool is amazing

The docs state
"When using WorldTool in a custom dimension, make sure the chunk at 0 0 is loaded and there is a block at 0 0 13, by running /forceload add 0 0 and /function worldtool:init/set_base_blocks in that dimension."
Try that and see if it solves the issue.

The docs state
"When using WorldTool in a custom dimension, make sure the chunk at 0 0 is loaded and there is a block at 0 0 13, by running /forceload add 0 0 and /function worldtool:init/set_base_blocks in that dimension."
Try that and see if it solves the issue.

Wow i don't know how I managed to not read that note at the top of the documentation. That absolutely worked! Thanks so much for your quick reply!


can not start ssh under windows

OS: Windows 11
got this error:
C:\Users\xxx>trzsz ssh user@xxx
Failed to create console process: The system cannot find the file specified.
C:\Users\xxx>ssh -V
OpenSSH_for_Windows_8.6p1, LibreSSL 3.4.3

If using MSYS2 or Git Bash on windows, and getting an error The handle is invalid.

Install winpty by pacman -S winpty in MSYS2.
Git Bash should have winpty installed, no need to install it manually.
Add winpty before trzsz, e.g.: winpty trzsz ssh x.x.x.x.

The /usr/bin/ssh in MSYS2 and Cygwin is not supported yet, use the OpenSSH instead.

In MSYS2, e.g.: winpty trzsz /c/Windows/System32/OpenSSH/ssh.exe x.x.x.x.
In Cygwin, e.g.: trzsz "C:\Windows\System32\OpenSSH\ssh.exe" x.x.x.x.

Try https://github.com/trzsz/trzsz-ssh


removing python dependency in shell scripts

removes the python scripts by leveraging help:evaluate better

Coverage remained the same at 62.911% when pulling 9480427a795828ce61a967ab6034f93f65007088 on feature/removing-python-dependency into d3326888edd473a56488871377076ce74b7fb851 on develop.

@shoeffner awesome! will look into this shortly.

@shoeffner this is awesome! not sure how i missed this feature when doing this first implementation. and one less package dependency is significant.
:shipit:


soroban-rpc: Remove dependency on Horizon

Fixes #430

@sreuland @tamirms I am not sure how to handle the different workflows (build-latest.yml build-soroban-dev.yml build-testing.yml) It seems that latestis using0.4, soroban-devis using0.6.1and testingis using0.4`
However, the removal of the Horizon dependency only happened in main. Maybe we should wait until all workflows surpass a version with Horizon removed?

@sreuland @tamirms I am not sure how to handle the different workflows (build-latest.yml build-soroban-dev.yml build-testing.yml) It seems that latest is using 0.4, soroban-dev is using 0.6.1and testing is using 0.4
However, the removal of the Horizon dependency only happened in main. Maybe we should wait until all workflows surpass a version with Horizon removed?

Ok, yes, I think for now, can continue to update just the workflows with soroban-tools ref where it's possible to be used, so just the soroban-dev and just to a soroban release version. All the workflows build rpc from soroban-tools and copy the bin to the final quickstart image, but it's only started as a service if --enable-soroban-rpc is passed on docker run and that is only supposed to be used on the soroban-dev image and the option is only allowed with --standalone and --futurenet.
Am assuming when testnet/pubnet get upgrade to soroban enabled core version, then the latest/testing workflows get changed to use same core release/ref version and would bump the soroban_tools_ref to latest version and change quickstart to allow --enable-soroban-rpc with  --testnet and --pubnet and change the README.md to accurately state the same allowed usages.
for situations that want to build quickstart and use main or other ref on soroban tools, can do that locally, by checking out quickstart and running make with CORE_REF/SOROBAN_TOOLS_REF/GO_REF

All the workflows build rpc from soroban-tools and copy the bin to the final quickstart image, but it's only started as a service if --enable-soroban-rpc is passed on docker run and that is only supposed to be used on the soroban-dev image and the option is only allowed with --standalone and --futurenet.

Does this mean that the current change will only impact the soroban-dev image?
I guess that we will need to make a new soroban-tools release so that we can bump the soroban_tools_ref to something higher that 0.6.1?
Should I just create a new tag, say, 0.7.0? (I see there's already a 0.6.1 tag without a matching release).

All the workflows build rpc from soroban-tools and copy the bin to the final quickstart image, but it's only started as a service if --enable-soroban-rpc is passed on docker run and that is only supposed to be used on the soroban-dev image and the option is only allowed with --standalone and --futurenet.

Does this mean that the current change will only impact the soroban-dev image?
I guess that we will need to make a new soroban-tools release so that we can bump the soroban_tools_ref to something higher that 0.6.1?
Should I just create a new tag, say, 0.7.0? (I see there's already a 0.6.1 tag without a matching release).

the '0.6.1' tag on tools was done as part of Preview 7 release, just to capture a needed fix done in ingest package for rpc to use during ingestion, a gh release would have initiated other workflows that weren't desired.
Yes, the changes here are effective in the soroban-dev image build only. The soroban-rpc bin and supervisord service config files are compiled into all quickstart image variants, but it is only deployed and started when the --enable-soroban-rpc is used which also requires --standalone or --futurenet network only, and will only work on the soroban-dev image b/c it uses the latest released soroban enabled core git ref compiled with 'enable next protocol version'. As testnet and pubnet get upgraded, then at same time, will have to change quickstart to deploy and enable soroban-rpc for that network type also(follow the same as done in futurenet/soroban-rpc).
The intent of soroban-dev image was to be pinned to soroban release, we probably don't want to change soroban_tools_ref until next. There is option to build quickstart image locally with the makefile and specify newer version of tools/core refs. Once pubnet is upgraded to soroban, assuming we likely deprecate 'soroban-dev' and then just have the latest and testing images set to the latest tools/core refs.

I took the liberty of creating a v0.6.2 tag on soroban-tools and bumping the reference here.

@sreuland this cannot be merged without updating thesoroban-tools ref so we have two options:

Create a v0.6.2 tag on soroban-tools repo and use that.
Put this on hold until the next soroban release

I actually think (1) is fine since the changes are only specific to soroban-rpc (although the API is changed) and don't have anything to do with the network<EMAIL_ADDRESS>
yes, agreed on first option and can approve if API change coming in 0.6.2 is just additive, not breaking compatibility from 0.6.1 correct?
The Preview 7 Release also provides a pinned hash of stellar/quickstart:soroban-dev from time of release, so, for those wanting to stay on that release, they can do so.

It seems like the arm64 build is getting killed (OOM?) when compiling the Rust libpreflight library:

ok, looking at test failure, maybe a docker qemu thing..

, if we proceed with update, it would require using soroban-cli built with >=<EMAIL_ADDRESS>or we hold here and for use cases that need latest can build quickstart locally with newer versions via the make arguments CORE_REF/SOROBAN_TOOLS_REF/GO_REF.

I'm fine with one option or the other. Your call

ok, looking at test failure, maybe a docker qemu thing..

Did you get somewhere?

, if we proceed with update, it would require using soroban-cli built with >=<EMAIL_ADDRESS>or we hold here and for use cases that need latest can build quickstart locally with newer versions via the make arguments CORE_REF/SOROBAN_TOOLS_REF/GO_REF.

I'm fine with one option or the other. Your call

ok, looking at test failure, maybe a docker qemu thing..

Did you get somewhere?

@tsachiherman , do you have preference on inter-release updates to stellar/quickstart:soroban-dev, we want to confirm what the meaning of this image should represent, i.e. last stable release or 'latest', this pr introduces a newer rpc with breaking change that requires users to use the latest soroban-tools build of cli with it(the getAccount method is removed), the preview 7 release does specify a specific hash of stellar/quickstart:soroban-dev.

I think that you already answered your own question. Yes, we need to be able to define clearly what each one of these means, so that there is a clear definition. I think that the release docs should specify that hash, so that you could always use historical builds. That would allow us to use the latest without the hash, right ?

Great, should we merge @sreuland ?


Bug when viewing on web

Describe the bug
When viewing my flutter app on web, I have this error:

But on app, it works fine
I an using the latest version of flutter

hey @JayWebtech, as the assertion says, you need to provide a borderColor when running the application on the web. For mobile app, it's not required. If your design demands a transparent border you can use Colors.transparent

Thank you it works


[WIP] Assignments totals

Description

Branched from @bailliekova's PR to test out assignment totals.
Took some small shortcuts to get something up and running we'll want to make better. Namely:

Not using UFDs to create the documents and assignment partitions (see in progress #5)
Handling of partition names as UUIDs, which requires constantly stripping dashes. I think we can just wrap the table names with double quotes to solve this.

Total pop endpoint is hardcoded for one test fixture. Will need to figure out how we want to handle document <-> gerrydb view relationships
Move tests to dedicated directory
Refactor gerrydb schema name as constant

Reviewers

Primary: @bailliekova
Secondary: @mariogiampieri

Checklist

[ ] Added/Updated related documentation (if applicable).
[x] Added/Updated related unit tests (if applicable).

Screenshots (if applicable):

Getting an error with the partitioned table's constraints:
self = <sqlalchemy.dialects.postgresql.dml.OnConflictDoUpdate object at 0x104f46c60>
constraint = None, index_elements = None, index_where = None
set_ = {'zone': Column('zone', Integer(), table=<excluded>, nullable=False)}
where = None

    def __init__(
        self,
        constraint: _OnConflictConstraintT = None,
        index_elements: _OnConflictIndexElementsT = None,
        index_where: _OnConflictIndexWhereT = None,
        set_: _OnConflictSetT = None,
        where: _OnConflictWhereT = None,
    ):
        super().__init__(
            constraint=constraint,
            index_elements=index_elements,
            index_where=index_where,
        )

        if (
            self.inferred_target_elements is None
            and self.constraint_target is None
        ):
>           raise ValueError(
                "Either constraint or index_elements, "
                "but not both, must be specified unless DO NOTHING"
            )
E           ValueError: Either constraint or index_elements, but not both, must be specified unless DO NOTHING

.venv/lib/python3.12/site-packages/sqlalchemy/dialects/postgresql/dml.py:290: ValueError

TY for merging in #5 @bailliekova ! I'll probably leave this PR open to address the null populations in the UDF then merge after you have.

@raphaellaude I lost the pop total endpoint along the way in my branch, sorry, that'll need to come back in here.


/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found

I am a newbie of posting an issue at github.
As I cargo build --release , I got the following error.
error: failed to run custom build command for 'proc-macro2 v1.0.34'
with the message of /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.32' not found
What can be done first?

RUSTFLAGS='--cfg procmacro2_semver_exempt' cargo build --release

This may work.

I'm not sure, but this does not sound like something that would be related to proc-macro2. We don't do anything platform-specific in this crate, it's just an ordinary pure Rust crate.

I ran into a user today with a very similar error:
error: failed to run custom build command for `proc-macro2 v1.0.89`

Caused by:
  process didn't exit successfully: `/home/matthias/Documents/Rust/bevy/target/debug/build/proc-macro2-af373eff3cd1001c/build-script-build` (exit status: 1)
  --- stderr
  /home/matthias/Documents/Rust/bevy/target/debug/build/proc-macro2-af373eff3cd1001c/build-script-build: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found (required by /home/matthias/Documents/Rust/bevy/target/debug/build/proc-macro2-af373eff3cd1001c/build-script-build)

I have no idea why it's failing in proc-macro2's build script: it looks reasonable.


gpgtools-beta: 2017.1b2

If there’s a checkbox you can’t complete for any reason, that's okay, just explain in detail why you weren’t able to do so.
After making all changes to the cask:

[X] brew cask audit --download {{cask_file}} is error-free.
[X] brew cask style --fix {{cask_file}} reports no offenses.
[X] The commit message includes the cask’s name and version.

Additionally, if adding a new cask:

[ ] Named the cask according to the token reference.
[ ] brew cask install {{cask_file}} worked successfully.
[ ] brew cask uninstall {{cask_file}} worked successfully.
[ ] Checked there are no open pull requests for the same cask.
[ ] Checked the cask was not already refused in closed issues.
[ ] Checked the cask is submitted to the correct repo.

There was a pull request template when you submitted. It contains steps that must be followed.
If you were not presented a template, you may have submitted via a CLI tool (likely hub). If that was the case, you may wish to see if the tool has a way to let you use the template (hub seems to have already implemented it, so you may be using an old version).
Alternatively, you may wish to use cask-repair, that takes care of all of this for you.

Hmm.. I'm using hub 2.2.9. Is the behavior you're describing in the 2.3 pre-release?

If there’s a checkbox you can’t complete for any reason, that's okay, just explain in detail why you weren’t able to do so.
After making all changes to the cask:

[X] brew cask audit --download {{cask_file}} is error-free.
[X] brew cask style --fix {{cask_file}} reports no offenses.
[X] The commit message includes the cask’s name and version.

Additionally, if adding a new cask:

[ ] Named the cask according to the token reference.
[ ] brew cask install {{cask_file}} worked successfully.
[ ] brew cask uninstall {{cask_file}} worked successfully.
[ ] Checked there are no open pull requests for the same cask.
[ ] Checked the cask was not already refused in closed issues.
[ ] Checked the cask is submitted to the correct repo.

No idea which version it is.


Enhancing Code Quality: Naming of the Parameters and Class Names

Summary:
This update is on the enhancement of the code through increasing code readability, code manageability and following the Python naming convention. Changes made include changing the names of parameters and classes to conform to the right naming conventions as well as removing unnecessary code. The most important change is renaming of classes and variables to make them look like Python’s camel case, for example, changing the name of the pd_Series class to PdSeries. These changes assist in providing more descriptive and comprehensible code, which is also in compliance with Python’s Style Guide for writing code, and therefore enhances code readability and manageability.

Related Issues:
Naming Conventions: Before, there was no compliance to Python naming conventions and this made the class names and parameters quite ambiguous.
Code Cleanup: Comments and parameters that were not needed were left in the script which made the script messy and hard to navigate.

Discussions:
The debates that surrounded these changes centered on the need to respected the Python naming conventions and make the class and the parameters used in it informative. Everyone supported the decision taken to rename the variables and classes as this would help in making the script easily understandable particularly when other developers are working on it. Also, removing unnecessary code was also considered as a possible way to enhance the script’s efficiency and its legibility.

QA Instructions:
Check the script and make sure that all the parameter names and class names used adhere to the set naming conventions, where by the parameters must only contain lower case letters, numbers and underscores and the first character of the parameter name must not be a number, while the class names must be in camel case.
Make sure that all the alterations regarding the naming do not have an impact on the original performance of the script.
This should be done in a way that does not interfere with any part of the script even the unused ones.

Merge Plan:
Once QA validation is done, then go ahead and merge the changes into the main branch. Just make sure that new parameters and classes are named properly everywhere and that unused code removal did not bring any bugs.

Motivation and Context:
The reason for these changes was to make the code more readable and the possibility to easily edit the code following the guidelines provided by the Python’s official standards. Such renaming of parameters and classes makes the script more comprehensible as well as more manageable, which is particularly crucial in a team. It also removes unnecessary mess which also enhances the quality of the script.

Types of Changes:
Refactoring: Spelling out and changing the names of the variables and classes to make them adhere to python standards.
Code Cleanup: Tidied up and general improvements including the removal of unnecessary code.
Code Quality Improvement: Enhancements in the readability as well as the maintainability of the script.

Clearly AI-generated, please stop opening such pull requests @AnandPolamarasetti.