Add jinja2 time

Support for current date time in prompt and generation via {% now 'utc' %}.
Please let me know your thoughts! :bow:
Related to #617

Current coverage is 99.63%

Merging #630 into master will not affect coverage as of 298a45f

@@            master    #630   diff @@
======================================
  Files           12      13     +1
  Stmts          546     549     +3
  Branches         0       0
  Methods          0       0
======================================
+ Hit            544     547     +3
  Partial          0       0
  Missed           2       2

Review entire Coverage Diff as of 298a45f

Uncovered Suggestions

+0.37% via ...ookiecutter/utils.py#27...28

Powered by Codecov. Updated on successful CI builds.

:bell: Looks like this needs a little rework because #617...

Hi @michaeljoseph! :wave:
Getting all these notifications for your comments made my day :smiley:
Do you think we should add jinja2-time to cookiecutter itself? This was supposed to be an easy alternative to #617 as it was sitting there for a while and people kept asking about it.

I'd love to get this to core, in the end of the day every template uses either year or now. Both of which easily be retrieved with jinja2-time. :smile:

Hey @hackebrot :smiley_cat:
Yeah, I'm :+1: on including jinja2-time.

Aye, I'll update this guy and release a new version. Sounds good to you @michaeljoseph @pydanny?

Updated version at #653 :smiley:


Added character encoding detection to Parser$Input.

Changes:

Parser$Input will detect and preserve the original file encoding.

Closing the draft because the license is incompatible, the input may not have a representation on disk and should use the InputStream, and for further analysis.


"Verfassen" statt "zusammenstellen"

[Hier Feedback eingeben]
The translation to german is incorrect.
It should say "Verfassen" statt "zusammenstellen"
This is very important in order for germans to even FIND the function in power automate because seachning for "compose" results in an empty search result.

Dokumentdetails
⚠ Bearbeiten Sie diesen Abschnitt nicht. Er wird für die Verknüpfung von learn.microsoft.com zum GitHub-Issue benötigt.

ID: 79bddf7e-aad7-5b99-0b73-a893d25615f5
Version Independent ID: f2f0c4d6-b613-d269-4756-bcd7548f76ec
Content: Verwenden Sie Datenvorgänge in Power Automate (enthält Videos) - Power Automate
Content Source: articles/data-operations.md
Service: power-automate
Sub-service: cloud-flow
GitHub Login: @MSFTMan
Microsoft Alias: deonhe

@ZwilleSmutje @Bernadette2022 - Thanks for your feedback. We have informed the Localization team about this issue in our localized content. Closing the issue.

@ZwilleSmutje our localization supplier triage this feedback and the current translaton looks to be appropriate:
There are two translations for term “compose” - "Verfassen" and "zusammenstellen".
Confirmed by our de-de translator, both are correct, and their usage depends on different situations.
By comparing, it seems our current translation for compose is acceptable and consistent in the whole article. (Please see below the German screenshot on the right of current English screenshot).


Histogram Loss for higher Pytorch version

Hi @genekogan ,
I am wonder if you have tried the histogram loss with newer Pytorch version. Currently I am using Python 3.7.9 and Pytorch 1.6.0 on Windows 10, but got the following errors:
neural_style.py:98: SyntaxWarning: assertion is always true, perhaps remove parentheses?
  assert(len(content_seg_list) == len(style_image_list), \
neural_style.py:115: SyntaxWarning: assertion is always true, perhaps remove parentheses?
  assert(len(style_seg_list) == len(style_image_list), \
Traceback (most recent call last):
  File "D:\Anaconda3\envs\tf2\lib\site-packages\torch\utils\cpp_extension.py", line 1515, in _run_ninja_build
    env=env)
  File "D:\Anaconda3\envs\tf2\lib\subprocess.py", line 512, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "neural_style.py", line 63, in <module>
    cpp = torch.utils.cpp_extension.load(name="histogram_cpp", sources=["histogram.cpp", "histogram.cu"])
  File "D:\Anaconda3\envs\tf2\lib\site-packages\torch\utils\cpp_extension.py", line 974, in load
    keep_intermediates=keep_intermediates)
  File "D:\Anaconda3\envs\tf2\lib\site-packages\torch\utils\cpp_extension.py", line 1179, in _jit_compile
    with_cuda=with_cuda)
  File "D:\Anaconda3\envs\tf2\lib\site-packages\torch\utils\cpp_extension.py", line 1279, in _write_ninja_file_and_build_library
    error_prefix="Error building extension '{}'".format(name))
  File "D:\Anaconda3\envs\tf2\lib\site-packages\torch\utils\cpp_extension.py", line 1529, in _run_ninja_build
    raise RuntimeError(message)
RuntimeError: Error building extension 'histogram_cpp': [1/3] cl /showIncludes -DTORCH_EXTENSION_NAME=histogram_cpp -DTORCH_API_INCLUDE_EXTENSION_H -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include -ID:\Anaconda3\envs\tf2\lib\sit
e-packages\torch\include\torch\csrc\api\include -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\TH -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include"
...
[2/3] C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=field_witho
ut_dll_interface -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcompiler /EHsc -Xcompiler /wd4190 -Xcompiler /wd4018 -Xcompiler /wd4275 -Xcompiler /wd4267 -Xcompiler /wd4244 -Xcompiler /wd4251 -Xcompiler /wd4819 -Xco
mpiler /MD -DTORCH_EXTENSION_NAME=histogram_cpp -DTORCH_API_INCLUDE_EXTENSION_H -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\torch\csrc\api\include -ID:\Anaconda3\envs\
tf2\lib\site-packages\torch\include\TH -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -ID:\Anaconda3\envs\tf2\Include -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA
_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75
FAILED: histogram.cuda.o
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\nvcc -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=field_without_dll
_interface -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcompiler /EHsc -Xcompiler /wd4190 -Xcompiler /wd4018 -Xcompiler /wd4275 -Xcompiler /wd4267 -Xcompiler /wd4244 -Xcompiler /wd4251 -Xcompiler /wd4819 -Xcompiler
 /MD -DTORCH_EXTENSION_NAME=histogram_cpp -DTORCH_API_INCLUDE_EXTENSION_H -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\torch\csrc\api\include -ID:\Anaconda3\envs\tf2\li
b\site-packages\torch\include\TH -ID:\Anaconda3\envs\tf2\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include" -ID:\Anaconda3\envs\tf2\Include -D_GLIBCXX_USE_CXX11_ABI=0 -D__CUDA_NO_HA
LF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr -gencode=arch=compute_75,code=sm_75 ... -o histogram.cuda.o
D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\c10/util/ThreadLocalDebugInfo.h(12): warning: modifier is ignored on an enum specifier

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\ATen/record_function.h(18): warning: modifier is ignored on an enum specifier

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/jit/api/module.h(483): error: a member with an in-class initializer must be const

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/jit/api/module.h(496): error: a member with an in-class initializer must be const

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/jit/api/module.h(510): error: a member with an in-class initializer must be const

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/jit/api/module.h(523): error: a member with an in-class initializer must be const

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/autograd/profiler.h(97): warning: modifier is ignored on an enum specifier

D:/Anaconda3/envs/tf2/lib/site-packages/torch/include\torch/csrc/autograd/profiler.h(126): warning: modifier is ignored on an enum specifier

4 errors detected in the compilation of ...
histogram.cu
ninja: build stopped: subcommand failed.

Do you have any idea for this issue? Thanks in advance!

I've had problems compiling ninja on latest pytorch, it looks like maybe the error is connected to that. Honestly, I didn't see a ton of improvement with using histogram loss (YMMV) so if you're struggling to compile it, I wouldn't necessarily put much energy into it. Also, I do this all on Linux, no idea about Windows...

I've had problems compiling ninja on latest pytorch, it looks like maybe the error is connected to that. Honestly, I didn't see a ton of improvement with using histogram loss (YMMV) so if you're struggling to compile it, I wouldn't necessarily put much energy into it. Also, I do this all on Linux, no idea about Windows...

I see. I also tried on Linux, but had the same issue.
Thanks!


Added a color theme bar

Fixes #2
Here I have added a color theme bar to the page.
https://github.com/Tejas242/Music-Player-Web/assets/113110853/f7807867-a5bc-4110-89a0-2cf599024e93

👍 very nice


Expose element type for range implementations, fixes #215

The generic type contains information about the element type. In Hibernate 4.3+ this is available through DynamicParameterizedType.XPROPERTY.
This allows for determining the element type, which is useful for example for determining the result type of custom functions, analog to #214.
Fixes #215

Thanks, I'll review it when I have some time.

No rush!😃

Thanks, I merged it.


Add LICENSE files to bundled open source libraries

To comply with “bundle the license text” requirement of most open source licenses.

Would merge this PR

The upcoming release will include LICENCES.


Create openseed project page with interactive table

This PR creates a page with all projects in Open Seeds, including a table with all projects

This table can be queried:

love love love


UML-2315 : Add hidden text to notify screen reader to move to new tab on external links

Purpose
https://opgtransform.atlassian.net/browse/UML-2315
Fixes UML-2315
Approach
Explain how your code addresses the purpose of the change
Learning
Any tips and tricks, blog posts or tools which helped you. Plus anything notable you've discovered about the Use a Lasting Power of Attorney service
Checklist

[X] I have performed a self-review of my own code
[ ] I have added relevant logging with appropriate levels to my code
[ ] New event_codes have been documented on the wiki page
[ ] I have updated documentation (Confluence/GitHub wiki/tech debt doc) where relevant
[ ] I have added tests to prove my work
[ ] I have added welsh translation tags and updated translation files
[X] I have run an accessibility tool on any pages I have made changes to and fixed any issues found
[ ] I have notified the Interaction Designer of any content changes so that appropriate screenshots/flow diagram changes can be made
[ ] The product team have tested these changes

This needs welsh. Not sure if it needs the (opens in new tab) straight away but the files will need to be adapted to still use the old translation.


Twitters-color

Fixes Issue

Changes proposed
Changing the twitter color to the original one.
Also, just practicing PR here TBH.

Check List (Check all the applicable boxes)

[X ] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[ ] This PR does not contain plagiarized content.
[ ] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

Hey @KarlGusta, I see your fork is behind the main branch, so this PR shows 2 files changed!
Please Sync you fork with the linkfree main! let us know if you need any help with this!
__
  Summary: :hammer_and_wrench: This code needs a fix

@KarlGusta Please resolve the branch conflicts.

Thank you for your patience @kumarsonsoff3 and @SaptarshiSarkar12 . I'm only seeing this now. It appears I wasn't getting any notification on this until today. Let me do a sync then do another PR. I'll close this for now.


2D Renderer Color Map Max Bounds Clipping

At certain min/max color mapping data bounds, the color mapping will clip as can be seen in the attached photos.
To Reproduce:

Open Katrina
Add and enable TwoDData Renderer with U10 variable
Set max color map data bounds to 26.834 and rendering will be correct
Increase to 26.835 and color map will clip
If you increase further to 26.839 it will be fixed

Still present except now it seems to clip at 26.839 instead


FlutterMacOS.framework engine isn't natively available for desktop for ARM macOS Apple Sillicon (including building for all valid architectures on x86)

FlutterMacOS.framework only contains x86_64 architecture, so desktop apps run with Rosetta translation.  Add arm64 to the framework.
See also
https://chromium.googlesource.com/chromium/src/+/refs/heads/master/docs/mac_arm64.md

This also means Xcode 12 and up won't be able to build for macOS with ONLY_ACTIVE_ARCH=NO (profile and release, by default), even on an x86 machine.
More details in https://github.com/flutter/flutter/issues/70566.

I see this message, when I try to build for macOS:
or@Omids-iMac % flutter build macos
"build macos" is not currently supported.

Info:

or@Omids-iMac % flutter doctor --verbose
[✓] Flutter (Channel stable, 2.0.4, on macOS 11.0 20A5364e darwin-x64, locale
    en)
    • Flutter version 2.0.4 at /Users/or/ws/flutter
    • Framework revision b1395592de (6 days ago), 2021-04-01 14:25:01 -0700
    • Engine revision 2dce47073a
    • Dart version 2.12.2

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/or/Library/Android/sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.10.1

[✗] Chrome - develop for the web (Cannot find Chrome executable at
    /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

I see this message, when I try to build for macOS:
or@Omids-iMac % flutter build macos
"build macos" is not currently supported.

That's not related to ARM, you need to enable macos development flutter config --enable-macos-desktop
https://flutter.dev/desktop#set-up
I filed https://github.com/flutter/flutter/issues/79964 to make this clearer.

This is done after https://flutter-review.googlesource.com/c/recipes/+/26040, and an Engine with the new artifacts has rolled into the framework.


Step to Redirect Anonymous users missing.

There is a step missing from the document. After adding the identity, you need to click on "Settings" under Developer Portal -> Identities. On the settings window, check the box for "Redirect anonymous users to sign-in page". Without this checked the portals still allowed users to see the APIs without first signing in.

[Enter feedback here]

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 692852cd-11a6-1d6b-9540-caec9d0f14a4
Version Independent ID: 4c376561-6015-6dab-e23e-feffe74ccc8b
Content: Authorize developer accounts by using Azure Active Directory - Azure API Management
Content Source: articles/api-management/api-management-howto-aad.md
Service: api-management
GitHub Login: @dlepow
Microsoft Alias: danlep

Thank you for your feedback! We will review and update as appropriate.

@TheShawnEllis - Thanks for pointing this out. I am planning to update this article in an upcoming sprint and will address this issue at that time. Because we have a work item to complete this, we will now proceed to close this issue. If you have further information or want to continue the discussion, feel free to reopen it.
#please-close


Channel::onError does not report when rabbitmq server is down

When the channel is created, a callback is registered by onError() call. The code looks like this:
TcpConnection connection(&evHandler, amqpAddress);
TcpChannel channel(&connection);
channel.onError([](const char * errMsg) {
        std::cout << "AMQP: " << errMsg << std::endl;
    });

I expected that there will be something printed out when I shut down rabbitmq server (with sudo service rabbitmq-server stop). But actually, it does not.
However, if I check the channel before publishing, the channel shows it is not connected. The code is like:
if (!channel.connected()) {
    std::cout << "AMQP channel is not connected!\n";  // this line is printed out
}

My question is:

is broken connection supposed to be reported via Channel::onError()?
if I cannot get disconnection report from Channel::onError, should I check the connection before every publishing? Or is there a more preferred way to handle such a situation?

Thanks.

If something goes wrong with the entire connection, the onError() method inside the TcpHandler class is called. Best way is to create your own class that extends from TcpHandler or LibEvHandler, and implement this onError() method.


Get All Contents in Selective Deletion

A button can be added to list all content in selective content deletion.

Button use can be constricted.

Hey @NisiDominus
Do you mean you need a way to select all contents across all pages based on the content type which you are on?

@seahindeniz Yes, only 25 items are displayed on this page. I want the contents of all pages to be listed here.


Improve pull request command line instructions

Show checkout instructions also when there is no permission to push, for anyone who wants to locally test the changes.
First checkout the branch exactly as is, without immediately having to solve merge conflicts. Leave this to the merge step, since it's often convenient to test a change without worrying about this.
Use git fetch -u, so an existing local branch is updated when re-testing the same pull request. But not the more risky git fetch -f in to handle force pushes, as we don't want to accidentally overwrite important local changes.
Show different merge command depending on the chosen merge style, interactively updated.

Logged out or no ability to merge.

Squash merge instructions now using --squash.

The Blender Gitea has not yet been updated to include this. Probably this or next week. (If you have further questions let's talk on Blender Chat.)


991 dns test failure

Fixes #991
The dns test will now look at aliases in addition to the FQDN.

I'll test this against Ubuntu-14.


[Feature request] Make ladybird work on "financial websites" (house bank etc...) a priority.

Hey there ladybird devs,
I understand that you guys prioritize on bugs and simpler features, so it is perfectly fine to close this issue. The primary reason for the issue request here is to try to bring in an additional use case, and then perhaps, say, in some months, see a change in ladybird development that would help achieve the described goal here come closer to fruition, or even make it possible. I state this upfront so that you guys can close this and focus on bug reports etc...
So, before I describe the use case and feature request, let me first describe the background, and use case, as to why I filed this issue request today.
I am living in ~Central Europe and one important website I need is here (Erste Bank):
https://login.sparkasse.at/sts/oauth/authorize?response_type=token&client_id=georgeclient&state=
I usually use thorium as browser, which works fairly well. Today I had a hard time logging in. I did try
via opera and experienced the same issue. I then used firefox and all worked well; I could do the transaction I needed, close firefox and resume thorium.
Hopefully one day I can switch to ladybird; for the time, though, I am mostly using thorium. But in this
case, I thought ... "if I only use firefox for the job to log in to the online account of my bank account, why not use ladybird instead?" But, of course, I do not know how well ladybird already supports secure connections etc... It would be super-great if I could already use ladybird for this, rather than firefox.
The issue I had with thorium etc... was that after log in, a perpetually loading symbol was shown, and nothing else happened, e. g. that round circle that keeps on circling about in infinity. I think it was related to either cookies, or javascript. Anyway, just to explain the issue a bit; my objective, though, is to use ladybird rather than firefox eventually.
I do not know how well ladybird supports logging into a bank account yet. Perhaps some websites work and others do not. But I think I may not be the only one who would love to be able to use ladybird specifically in regards to transactions. This works in other browsers as well already (well, kind of, if we ignore the fact that it did not work for me with other browsers, so they tend to suck as well; except for firefox, but I can not use videos on Linux + firefox as I don't use pulseaudio, whereas thorium has no problem with audio; anyway, not going onto that side-discussion, just wanting to point out that "established browsers" can also suck for different reasons).
As I assume that secure transactions via the browser are super-important for many users, I would suggest that ladybird eventually focuses on this part in the future. Yes, many other things should work for ladybird, youtube videos, and what not, but I believe that for the top-ten-use cases, I think online banking and transactions via online shops, should most definitely be within the Top 10, perhaps even Top 5 use cases. It would also help adoption if that works well, IMO - and, as pointed out, I do not know how well it works right now. Perhaps it works well, but for the time being I simply use firefox in this regard.
Anyway - I don't want to make this issue request too long, so this was basically the main gist of my request. I am not saying this focus should be done "over night"; but perhaps it can be evaluated in some future meeting in a few months from now, and then more specific actions could be done, e. g. adding test cases, more summary report findings which other components have to be improved, and so forth. I assume that most of this is related to javascript in one way or another, so perhaps this is the main hurdle, although perhaps some HTML and CSS related aspect, as well as secure connections, may also have to be looked at more thoroughly.
Thank you for at the least reading this request, and as stated up front, please do feel free to close this issue here at any moment in time - hopefully after one or two ladybird dev had a look at the use case and rationale made here (e. g. "make financial transactions work well in ladybird").

Hi @rubyFeedback, the issues section of this project is for reporting actual issues, not discussing potential outcomes without even having tried Ladybird yourself.
If you want to talk to someone about Ladybird, consider joining our Discord.
If at some point you find an actual bug or a website that doesn't work in Ladybird, feel free to open an issue.

@rubyFeedback Your opening comment on the issue is a lot of storytelling, and not a lot of technical details.

I do not know how well ladybird supports logging into a bank account yet. Perhaps some websites work and others do not.

Posting an issue on our issue tracker without even trying it out for your desired use case is not helpful for our development.
A more actionable issue might go something like this:

Hi, I tried <0banking website url>. and it seems to load properly. However, I am unable to log in. The logs said that Web API methods <x, y and z> are marked as FIXME, and there were javascript errors that tried to access <Web API Foo that does not exist on ladybird's window object>.
After looking at the site, it looks like
It looks like in order to support this website, Ladybird will need to implement

spec link 1
spec link 2
mdn link if you do not know how to get to the spec link

Thanks for your interest in Ladybird, but I think that your understanding of GitHub issues does not match the project's expectations. Our issue tracker should not be a place to blog about potential improvements to the web, but a place to discuss development of specific features, to address specific bugs, and to prioritize specific features based on which websites and categories of websites they affect.


Adding method to return a falsy value

This implementation meets the request of the issue #360
I created a method "falsy()" to return one value of array default [false, null, undefined, 0, NaN, ''], or other value if the pool parameter  is used.

2 cents from my side, your pool can hold all the values except undefined  [false, null, 0, NaN, ''] and index can be calulated as index = this.integer({min: 0, max: pool.length}), so that undefined will be returned when you access the index 6, because it is undefined :-)  Thanks.

Good idea @sachingadagi.
Code changed. Thanks.

@sachingadagi This means that custom pools will always have undefined added to the set, which may not always be what you intended.
e.g:
chance.falsy({ pool: [ NaN ] }) // NaN or undefined are returned


Add: Error Handling Section

@ryanmcdermott - There is much more than can be added to this section but thought I'd start simple and see what you thought of the language and examples.

@ryanmcdermott Thanks for the review. Updates made.

Woo hoo! Thanks 🎉


Add .circleci/config.yml

👷 Deploy Preview for chenjie processing.
🔨 Explore the source changes: be4555736ab69231bfb9738b95c439cdf49a10fd
🔍 Inspect the deploy log: https://app.netlify.com/sites/chenjie/deploys/6104deaae858e60008a2da03


Row cssFunction not working

Griddle version
1.3.1
Expected Behavior
Row should have class name applied
Actual Behavior
Class name not applied
Steps to reproduce
        <RowDefinition
            cssFunction={(rowData) => rowData.active === "A" ? "active" : "inactive"}>
        </RowDefinition>

@ryanlanciaux thoughts on how this relates to #623? rowData isn't currently available to implement this function call. It's easy enough to add (including moving rowDataSelector out of LocalPlugin), but you had mentioned performance implications.

This is a good question. I thinking moving rowDataSelector out of local plugin would work well. The main thing is I currently think that columns should still only receive the column value and need to "opt-in" to receiving rowData (currently through the rowDataSelector but hopefully through the option on ColumnDefinitions in the future)
The performance problems I was having is more from columns that received rowData -- any time any info in the row was changed, the column would update unless shouldComponentUpdate was used. The problem there was the logic around the shouldComponentUpdate could get very messy really quick. By default, it was updating only for the current cell value but you could have computed columns (through custom components) and you had to force update -- "opting-in" to rowData made this a little easier.

I took a shot implementing this in https://github.com/GriddleGriddle/Griddle/pull/644.
@wizhippo note that your example would need to change slightly with my implementation:
        <RowDefinition
            cssFunction={({rowData}) => rowData.active === "A" ? "active" : "inactive"}>
        </RowDefinition>

@dahlbyk works well here thank you.


How to get the access token for a linked account?

From the user schema, the access token field is not listed. How I retrieve the access token issued from my OAuth2 provider for the current user?

It should appear in the Authorization request header.

It should appear in the Authorization request header.

I don't get it. What I referring to is after the account linking has completed, how my fulfilment server gets the token from Google Assistant?
The legacy Java Actions SDK  has the getAccessToken method to retrieve the token from User object in fulfilment request.

I use conv.user.params.bearerToken, as this contains the token.
For me this works great.


Add an HTTP ResponseFuture struct

We currently take owned types, such as Vecs and Strings. This is due to the lifetimes around requests, their inner polled futures, and the caller are difficult to work around.
The way requests currently work is that they implement std::future::Future and "start" a future when initially polled for the first time. They then store this future internally in a field like so:
pub struct SomeRequest {
    fut: Option<Pending<'a, Message>>,
    // more fields...
}

This requires a lot of boilerplate on our part: we have a macro implementing Future on every request with more or less unique implementations and need fields for the inner future.
For users, this design comes at a cost of performance and clarity. Users need to give us owned arguments. It is also impossible for users to determine whether a request is in flight using the type system due to that information being hidden. We need to clone arguments if we want to avoid panics from users accidentally double polling a request after completion, when it may not be clear that a request has been used due to the request not being consumed.
Instead, we can turn the inner request functions that "start" a future into ones that consume and execute the request and then return a future resolving to a response directly to the user. The new response::ResponseFuture implements Poll and will begin the execution of a request - if a failure did not occur during construction - while polling it to completion, providing the resulting response::Response.
Internally the implementation of the CreateMessage::exec function looks like this:
pub fn exec(self) -> ResponseFuture<Message> {
    let request = Request::from_route(Route::GetMessage {
        channel_id: self.channel_id.0,
        message_id: self.message_id.0,
    });

    self.http.request(request)
}

The usage of executing the request and printing the message contents looks like this:
let msg = client.message(channel_id, message_id).exec().await?;
let message = response.model().await?;

println!("content: {}", message.content);

This work does not include the optimization work that turns all of our owned parameters to borrowed ones and will be done by a separate PR.
Blocks on #923. Merged.

Rebased with the merging of #923.

Addressed comments.


Deploying Logic App flow using Azure Pipeline task "AzureResourceManagerTemplateDeployment@3"

Hi,
I'm trying to automate the deployment of Logic App flow from the Azure DevOps IaC pipeline. To do so, I created manually the Logic App flow and tested it to be sure that there is no error. Then I downloaded the it as a code (JSON file).

Finally, I uploaded this JSON file into Azure DevOps repo and created the following job in YAML file:
  jobs:
  - job: logicapp_deploy
    displayName: 'Logic App Deployment'
    steps:
    - task: CopyFiles@2
      displayName: 'Copy ARM templates'
      inputs:
        sourceFolder: 'templates/arm-templates'
        targetFolder: '$(Build.ArtifactStagingDirectory)'

    - publish: '$(Build.ArtifactStagingDirectory)'
      artifact: mytemplates

  - deployment: test_deployment
    displayName: 'Test Deployment'
    environment: DEV
    strategy:
      runOnce:
        deploy:
          steps:
          - download: current
            artifact: mytemplates

          - task: AzureResourceManagerTemplateDeployment@3
            displayName: 'Deploy'
            inputs:
              deploymentScope: 'Resource Group'
              azureResourceManagerConnection: <...>
              subscriptionId: <...>
              action: 'Create Or Update Resource Group'
              resourceGroupName: <...>
              location: westeurope
              templateLocation: 'Linked artifact'
              csmFile: '$(Pipeline.Workspace)/mytemplates/logicapp.template.json'
              csmParametersFile: '$(Pipeline.Workspace)/mytemplates/logicapp.parameters.json'
              overrideParameters: '-name logicAppTest -location westeurope'
              deploymentMode: Incremental
              deploymentName: 'deployedLogicApps'

When I run this YAML file, I get the following error:
ARM Service Connection deployment scope - Resource Group
Checking if the following resource group exists: my_rg.
(node:1859) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
Resource group exists: true.
Creating deployment parameters.
The detected encoding for file '/home/vsts/work/1/mytemplates/logicapp.template.json' is 'utf-8'
The detected encoding for file '/home/vsts/work/1/mytemplates/logicapp.parameters.json' is 'utf-8'
There was an error while overriding 'name' parameter because of 'TypeError: Cannot read property 'type' of undefined', make sure it follows JavaScript Object Notation (JSON)
There was an error while overriding 'location' parameter because of 'TypeError: Cannot read property 'type' of undefined', make sure it follows JavaScript Object Notation (JSON)
Starting template validation.
Deployment name is deployedLogicApps
There were errors in your deployment. Error code: InvalidRequestContent.
##[error]The request content was invalid and could not be deserialized: 'Could not find member 'actions' on object of type 'Template'. Path 'properties.template.actions', line 1, position 155.'.
##[warning]Validation errors were found in the Azure Resource Manager template. This can potentially cause template deployment to fail. Task failed while creating or updating the template deployment.. Please follow https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/template-syntax
Starting Deployment.
Deployment name is deployedLogicApps
There were errors in your deployment. Error code: InvalidRequestContent.
##[error]The request content was invalid and could not be deserialized: 'Could not find member 'actions' on object of type 'Template'. Path 'properties.template.actions', line 1, position 155.'.
##[error]Check out the troubleshooting guide to see if your issue is addressed: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-resource-group-deployment?view=azure-devops#troubleshooting
##[error]Task failed while creating or updating the template deployment.
Finishing: Deploy Logic App

It looks like task: AzureResourceManagerTemplateDeployment@3 does not support the format of a JSON file that I downloaded from Logic App, and neither it supports the schema $schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json.
Should I use any other Azure Pipelines task instead of AzureResourceManagerTemplateDeployment@3?
The JSON file logicapp.template.json looks as follows:
{
    "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
    "actions": {
        "Get_blob_content": {
            "inputs": {
                "host": {
                    "connection": {
                        "name": "@parameters('$connections')['azureblob']['connectionId']"
                    }
                },
                "method": "get",
                "path": "/datasets/default/files/@{encodeURIComponent(encodeURIComponent(uriPath(triggerBody()?['data'].url)))}/content",
                "queries": {
                    "inferContentType": true
                }
            },
            "metadata": {
                "JTJmZGV2cmVwb3J0cyUyZmRldmVsb3BtZW50cmVwb3J0LnBkZg==": ""
            },
            "runAfter": {},
            "type": "ApiConnection"
        },
        "Send_an_email_(V2)": {
            "inputs": {
                "body": {
                    "Attachments": [
                        {
                            "ContentBytes": "@{base64(body('Get_blob_content'))}",
                            "Name": "Test"
                        }
                    ],
                    "Body": "@triggerBody()?['LastModified']",
                    "Subject": "Test",
                    "To"<EMAIL_ADDRESS>                },
                "host": {
                    "connection": {
                        "name": "@parameters('$connections')['office365']['connectionId']"
                    }
                },
                "method": "post",
                "path": "/v2/Mail"
            },
            "runAfter": {
                "Get_blob_content": [
                    "Succeeded"
                ]
            },
            "type": "ApiConnection"
        }
    },
    "contentVersion": "<IP_ADDRESS>",
    "outputs": {},
    "parameters": {
        "$connections": {
            "defaultValue": {},
            "type": "Object"
        }
    },
    "triggers": {
        "When_a_resource_event_occurs": {
            "inputs": {
                "body": {
                    "properties": {
                        "destination": {
                            "endpointType": "webhook",
                            "properties": {
                                "endpointUrl": "@{listCallbackUrl()}"
                            }
                        },
                        "filter": {
                            "includedEventTypes": [
                                "Microsoft.Storage.BlobCreated"
                            ],
                            "subjectBeginsWith": "/blobServices/default/containers/devreports/"
                        },
                        "topic": "/subscriptions/b632876c-cd99-4be5-bb92-f3c4090d2ad1/resourceGroups/dataMinds_rg/providers/Microsoft.Storage/storageAccounts/datamindsaml1576913410"
                    }
                },
                "host": {
                    "connection": {
                        "name": "@parameters('$connections')['azureeventgrid_1']['connectionId']"
                    }
                },
                "path": "/subscriptions/@{encodeURIComponent('b632876c-cd99-4be5-bb92-f3c4090d2ad1')}/providers/@{encodeURIComponent('Microsoft.Storage.StorageAccounts')}/resource/eventSubscriptions",
                "queries": {
                    "x-ms-api-version": "2017-09-15-preview"
                }
            },
            "splitOn": "@triggerBody()",
            "type": "ApiConnectionWebhook"
        }
    }
}

I exported a template from logic app (instead of a workflow) and now everything works as expected.


Merge pipeline is killed but it should not

(modified)
The attached logs show that the merge pipeline is killed because there is no more indexing pipeline handle in indexing_pipeline_handles. After that, the indexing pipeline on the corresponding index seems to have restarted but not the merge pipeline. So we end up with no merge.
logs.csv

Ok I've just understood what happened:

it starts with an IndexingPipeline actor timeout that happened when trying to respawn the pipeline
then the merge pipeline is killed just after by the IndexingService as it considers there are no more healthy indexing pipeline running on the given index.

A bit more thoughts on this:

the IndexingPipeline  actor timeout comes from the call to the metastore to get the index metadata.
to detect if the indexing pipeline is still running, we use the actor_handle.health() method which is nice... but here we have only a timeout and the pipeline will continue to run..


Add case tracking to stats with a signal

Ready for review.

@jpaidoussi, @rudigiesler & @KaitCrawford ready for review. Let me know if I'm heading in the right direction.

Just the one comment from me, looks good otherwise :) . (Also, we might want to ping rowan on the PRs)

@rowanseymour this is a small PR to add Case tracking to the statistics module. Currently it's just tracking Case itself, are there other combinations that you think are worth tracking? [Org, Case] perhaps or [Case, User] or some other combination?

Not quite getting what this is for. Is this for counting cases or counting something within a case? If the former then case doesn't need to be in the scope.

@rowanseymour sorry, just realised I kept the description empty. Apologies for that.
Yes it's for counting cases created. If Case doesn't need to be in the scope for counting cases then what scope do suggest we use for counting cases?

Ah -- I think I may be seeing what you mean. To query the daily counts the case:%d scope isn't needed, the partner:%d scope is.

Updated & ready for review again.

Right, now that I've worked on this, this bit of work makes no sense in isolation. Creating a separate PR that already this merged in and closing this one in favour of #91.


New version: Aqua v0.4.12

Registering package: Aqua
Repository: https://github.com/JuliaTesting/Aqua.jl
Created by: @tkf
Version: v0.4.12
Commit: 87abfad00a31d3cf2a8e631388145b2637d5ffac
Reviewed by: @tkf
Reference: https://github.com/JuliaTesting/Aqua.jl/commit/87abfad00a31d3cf2a8e631388145b2637d5ffac#commitcomment-56719010

It looks like I confused auto-merge by releasing 0.5.1 #45153 and 0.4.12 at the same time. It'd be nice to be able to handle a situation like this, though. It's not crazy to maintain multiple versions.
[noblock]


Is this only to be used for the four services mentioned in the README?

hi,
can this software be used only for the four services mentioned in the README? i would like to make an appointment for residence permit (here), but currently there are no appointments, so im not sure what the URL should be..
thanks!

Hi,
Unfortunately not. I'm looking for another solution for https://otv.verwalt-berlin.de/ams/TerminBuchen but I haven't been able to see the appointment page yet.

hi,
no worries, thanks for the update. i will close this for now. thanks!


Issue parsing standalone comments

Apparently tree-sitter misses the second type of comment mentionned here.
From what I could guess, it seems to me that the issue is due to the space before the inline attribute.

This is not parsed properly:
Foo bar {% This is a comment, spanning
multiple lines %} baz.

result:
(paragraph {)

The following is parsed correctly:
Foo bar{% This is a comment, spanning
multiple lines %} baz.

result:
(paragraph
  (inline_attribute {
   (args
    (comment % (content) %))
   }))

Nice find, thank you!


Edge: if mid is not defined, choose a random one

since I saw @alvestrand merge https://github.com/w3c/webrtc-pc/pull/535 earlier today... ;-)
(wondering if that should also apply to rejected m-lines but shrug)

LGTM


UCMCTrack in YOLOV8-OBB

Hello Kefu,
Thank you for your excellent paper, and this open source project. I really want to try it on my YOLOv8-OBB. However, with built-in tracker of the YOLO model, there are only two choice BOTSORT and BYTETRACK. I cannot find any instruction to integrate a custom tracker into YOLOv8. May you kindly provide some steps of using UCMCTrack+ in YOLOv8-OBB? Thank you! 中文的指引也可以，谢谢
currently I am using botsort to track:
model = YOLO("best.pt").to('cuda:0')
results = model.track(frame, persist=True, tracker="botsort.yaml", conf=0.691, iou=0.25)
if results[0].obb is not None:
            boxes = results[0].obb.xyxyxyxy.cpu().numpy()
            clss = results[0].obb.cls.cpu().tolist()
            track_ids = results[0].obb.id.int().cpu().tolist() if results[0].obb.id is not None else [None] * len(clss)
            confs = results[0].obb.conf.cpu().tolist()

            detections = []
            for box, cls, track_id, conf in zip(boxes, clss, track_ids, confs):
                # Process box data
                box = np.array(box).reshape(-1, 2)
                center_x = box[:, 0].mean()
                center_y = box[:, 1].mean()
                width = box[:, 0].max() - box[:, 0].min()
                height = box[:, 1].max() - box[:, 1].min()
                detections.append((int(center_x), int(center_y), int(width), int(height), int(cls), track_id, conf, box))

            frame = process_frame(frame, detections, track_ids)
        cv2.imshow("YOLOv10 OBB Detection", frame)
        ```

@corfyi Hello, can you provide some guidelines please? I would really appreciate


intltool-debian-patch - fix "error: cannot download perl-5.22.patch f…

…rom any mirror"
Motivation for this change
following nixos-unstable-small: error: cannot download perl-5.22.patch from any mirror
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

patch source: https://sources.debian.org/patches/intltool/

@grahamcofborg build intltool

Success on aarch64-linux (full log)
Attempted: intltool
Partial log (click to expand)
make[1]: Leaving directory '/build/intltool-0.51.0'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0
gzipping man pages under /nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0/share/man/
strip is /nix/store/qg2agrqkf240s656d207zqhipl0bc2id-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0/bin
patching script interpreter paths in /nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0
/nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0/bin/intltoolize: interpreter directive changed from " /bin/sh" to "/nix/store/9rv2bzx7jz6wjbaxij5qq580qvzksj4i-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0...
/nix/store/4mhwss6g0sgcvqqi61dcglb37kh68l18-intltool-0.51.0

Success on x86_64-linux (full log)
Attempted: intltool
Partial log (click to expand)
make[1]: Leaving directory '/build/intltool-0.51.0'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0
gzipping man pages under /nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0/share/man/
strip is /nix/store/21ymadblbmsbb2bk4q7gl4kjasp8zmgd-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0/bin
patching script interpreter paths in /nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0
/nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0/bin/intltoolize: interpreter directive changed from " /bin/sh" to "/nix/store/qckzjk3406va7h6s40cy9s75z2w715rq-bash-4.4-p19/bin/sh"
checking for references to /build in /nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0...
/nix/store/x4rsvw93lf3gisp4jwfsjjjhi7kjvq2c-intltool-0.51.0

Success on x86_64-darwin (full log)
Attempted: intltool
Partial log (click to expand)
 /nix/store/yrlzm8nkyzs5bwy7dhb1vhfzx936p6zn-coreutils-8.29/bin/install -c -m 644 Makefile.in.in '/nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0/share/intltool'
make[2]: Leaving directory '/private/tmp/nix-build-intltool-0.51.0.drv-0/intltool-0.51.0'
make[1]: Leaving directory '/private/tmp/nix-build-intltool-0.51.0.drv-0/intltool-0.51.0'
post-installation fixup
gzipping man pages under /nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0/share/man/
strip is /nix/store/yyak5sjv68n9vdgnkd2cb5djk1l9sqj5-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0/bin
patching script interpreter paths in /nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0
/nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0/bin/intltoolize: interpreter directive changed from " /bin/sh" to "/nix/store/9gghkkqhn6v7dvpf2319qvrxkkw03vwr-bash-4.4-p19/bin/sh"
/nix/store/0hcxyqx9knn5hhz4j3603h8cgdbxhfcn-intltool-0.51.0

sources.debian.org is not under version control and should not be used with fetchpatch since debian removes these files eventually.
The original patch and the new version introduced here  can both be found in the new Debian GitLab repo :
https://salsa.debian.org/gnome-team/intltool/commit/c71cd13604433d2f1dbac73de01268ab95f8b89e
and https://salsa.debian.org/gnome-team/intltool/commit/261b1e3026bf4e7782ef887bcdb54b6016beb955


Date picker for time filter

Current time filter accepts textual values like "1 year ago" and "2016-06-01"
It would be nice to have a date picker, so there's no need to type in values like "2016-06-01"

Dup of #767?

Yep looks to be the same one

It also would be great, if i could edit what i set.
e.g. if i set 2016-05-12 and I want to modify it to 2016-05-10 I have to write the whole new text again.
thanks!

A date picker wouldnt allow for relative dates which i think is important. Maybe eventually we can have a fancy React component that does both fixed and relative nicely.

Any news about it ? Didn't find any way to write or select a date directly in the dashboard :(

It looks that date picker is added in Slice view but dashboard date filter still does not support it

It's in now

mistercrunch,
would you mind telling us which release should we check out for using this feature

@jpvelsamy it works fine with 0.20.4

https://github.com/apache/superset/issues/2579


microphone plugin not finding getUserMedia properly

Edited! I failed to understand what the code is doing!
The current example code doesn't work on my browser - somehow src/plugin/microphone/index.js is falling back to promisifiedOldGUM and thus not finding getUserMedia.  I will investigate further.
My browser:
Google Chrome | 102.0.5005.61 (Build officiel) (64 bits)
Révision | 0e59bcc00cc4985ce39ad31c150065f159d95ad3-refs/branch-heads/5005@{#819}
Système d'exploitation | Linux
JavaScript | V8 <IP_ADDRESS>

Hm, in fact it does seem to be working now.  Sorry!

Hm, in fact it does seem to be working now. Sorry!

Good to hear, no worries.

Thanks! I think there was an old version of something coming from the CDN, as soon as I tried to debug it, it started working again...


Remove docSpecs

Originally, docSpecs were used to persist document state. But there are far less painful alternatives.

Under ARC, usage of docSpecs basically create a circular retain cycle on all of Fragaria's internal objects, which can be solved only by sprinkling __weaks all around, and that's not good by definition.
DocSpecs makes even interacting with other objects a pain: every time you have to get an object you have to make call objectForKey:MGSVeryLongAndSpammyConstant or valueForKey:MGSVeryLongAndSpammyConstant.
They are exposed, and thus their original raison d'etre has vanished.
DocSpecs flatten the entire object graph. This would be enough of a reason by itself to get rid of them.

The ideal "replacement" is to analyze the current object dependencies and then to make explicit ivars for object references. Then, the existence of docSpecs can be simulated (for backcompat purposes) by reimplementing objectForKey: and setObject:forKey: and the docSpec accessor in MGSFragaria. setDocSpec: should be reimplemented to log out an error, since I don't think anybody actually used it.
Also, the header for MGSFragaria exposes a lot of stuff about the creation of docSpecs and some stuff for accessing the content of a docSpec to make up for docSpecs being NSMutableDictionaries instead of custom objects. This stuff has to be removed (or stubbed out) as well, maybe in a MGSBackcompat category.

:+1:

This stuff has to be removed (or stubbed out) as well, maybe in a MGSBackcompat category.

Or rename the project and leave backwards compatibility behind.

This seems like the right issue to post this under. As part of the elimination of the docspec and moving to iVars (or properties?) it might also be an excellent time to move to adopting them through protocols.
This is somewhat inspired by your changing from the old ruler to Noodlekit's: If we have an ivar for the ruler and a protocol for it, then we don't have to subclass the ruler if someone wants to swap in another. Similar for the textview not having to descend from SMLTextView.
It's a big task and necessitates taking a full inventory of what is interacting and where. You're about 20 steps ahead of me in that with all of the refactoring you've been doing.

I think this is the number one priority for structural development. I tried to remove a simple property from the docSpoc (syntaxDefinitionName) so that I could start working on the new preferences controller, and it was frustrating (git stash \ git stash drop; I gave up).
It's still certainly possible to work in some of the other issues with the current docSpec, but I don't see a practical way to cleanly overhaul some of the other major structural elements (like user defaults) until this monstrosity it killed.
Given the updated readme about backward compatibility, can I assume you won't care about a backwards compatible solution to this? I think I can slay this beast, but it's going to require a lot of carving.

The only thing I want to keep around are objectForKey: and setObject:forKey: in MGSFragaria, because they were the recommended (or only) way of doing things, and every user of Fragaria is using these methods.

Once everything is property-based, they will be redundant with setValue:forKey and valueForKey. I might think about a deprecation warning when the time comes.

Right.

Fixed by 9e0563f.


Allow using assisted service to build images

This pull request adds integration with assisted service for building images.
If the PreprovisioningImage (and thus its BareMetalHost) has a label linking it to an InfraEnv object, it will be used to build and serve images to Ironic instead of the built-in process. The InfraEnv object will be updated with our Ignition bits. When it is ready, the generated ISO will be returned to BMO.
Requires:

https://github.com/openshift/cluster-baremetal-operator/pull/251
https://github.com/openshift/enhancements/pull/1059

/hold

/hold cancel

/retest
See https://review.opendev.org/c/openstack/ironic/+/835098 for the cause of the failure

/test e2e-metal-ipi-virtualmedia
/test e2e-metal-ipi

/unhold

/hold cancel


Possibly crash with kernel disabling CONFIG_PROC_PID_CPUSET

It assumes that /proc/self/cpuset exists here,
https://github.com/google/tcmalloc/blob/537629b16a632bbaaba5f77f31ced7e5fdde30e6/tcmalloc/internal/percpu.cc#L238
but actually this file doesn't exist if kernel has been built with CONFIG_PROC_PID_CPUSET=n.
when /proc/self/cpuset doesn't exist, open() must be failed and variable fd become negative, then it will crash here.
https://github.com/google/tcmalloc/blob/537629b16a632bbaaba5f77f31ced7e5fdde30e6/tcmalloc/internal/percpu.cc#L239

Does your kernel have support for membarrier with https://github.com/torvalds/linux/commit/2a36ab717e8fe678d98f81c14a0b124712719840 (5.10 or later)?
It should be fairly rare to need to use SlowFence (the procedure where the assertion is failing), but at the point it is needed, it's important for correctness that it complete successfully.

Thank you for your response.

Does your kernel have support for membarrier with torvalds/linux@2a36ab7 (5.10 or later)?

Yes, It is v5.19.2.
Actually I'm about to use https://github.com/envoyproxy/envoy on https://github.com/kata-containers/kata-containers/tree/3.1.3


Exception UX improvements...?

As it stands, were currently using std::runtime_error for literally all our native exceptions, errors, etc.
Maybe we should consider Adding well-defined exceptions? Or at least using some?
If we do decide to do this, it isn't urgent.

i'll have a look at some easy to pick out error

Kappa

Made a mock-up of how i would replace std::runtime_error() in AudioService,cpp
#ifndef NOVELRT_SERVICE_NOT_INITIALIZED_EXCEPTION_H
#define NOVELRT_SERVICE_NOT_INITIALIZED_EXCEPTION_H

#ifndef NOVELRT_H
#error Please do not include this directly. Use the centralised header (NovelRT.h) instead!
#endif

namespace NovelRt::Exceptions
{
  class ServiceNotInitializedException final : public std::runtime_error
  {
    public:
      ServiceNotInitializedException(const std::string functionName, const std::string message)
        : std::runtime_error("Unable to continue! Dangerous call being made to " + functionName + ". "+ message)
        {}
  };
} // namespace NovelRt::Exceptions

#endif //NOVELRT_SERVICE_NOT_INITIALIZED_EXCEPTION_H

The implementation would look something like this example:
void AudioService::pauseMusic() {
  if (!isInitialised) {
    _logger.logError("Cannot pause audio while the service is uninitialised! Aborting...");
    throw NovelRT::Exceptions::ServiceNotInitializedException("AudioService::pauseMusic()", "You cannot pause a sound when the AudioService is not initialised.");
  }

  alSourcePause(_musicSource);
}

Feel free to leave feedback, ideas and/or critique.

You have a typo in the namespace. I think you could also inherit from std;;exception instead?

You have a typo in the namespace. I think you could also inherit from std::exception instead?

The reason i went with std::runtime_error is due to the different implementation of std::exception on MSVC, where there are both parameterless constructors as constructors with parameters.
I made a small mock-up of a variant inheriting from std::exception
class ServiceNotInitializedException final : public std::exception
{
public:
	ServiceNotInitializedException(const std::string& function, const std::string& message)
		: std::exception("Unable to continue! Dangerous call being made to " + function + ". " + message)
	{}
};

this bit of code works just fine on my machine, but when i test it on http://cpp.sh/67lal it can not find a matching function for std::exception(const char*)
std::runtime_error on the other hand is used the same way on different compilers, making it easier to make cross-platform custom exceptions.
references:

std::exception::exception
std::runtime_error

I might be missing something, so feel free to correct me.
ps: i also edited the previous mock-up

So I've had a deeper look - it seems std::exception just has more explicit handling for this via method overriding, so the question becomes "do we want this more explicit behaviour?"

Resolved by #241 .


Example of workable collection usage

Hi, I thought it might be useful to add an example of how to use workable collections.
Basically just:
client = Workable::Client.new(api_key: 'api_key', subdomain: 'your_subdomain')
jobs = client.jobs
loop do
  jobs.each do |job|
    # Do something with the job
  end
  break unless jobs.next_page?
  jobs = jobs.fetch_next_page
end

Using loop because it's matz's preference
Would you like me to add it?  If so where would you like it?  Using yard in the workable collection class?  Or in the readme?

Hi, sorry for slight delay, was pretty occupied lately; and sure - feel free to add this info, I think readme should be just fine (somewhere under usage) - as it's loaded by yard anyway. Thanks!

Sorry for the double commit - hadn't realised I changed the gitignore on the first one to ignore rubymine files.


Make updates for RDS PR comments

Summary
The Starting point for RDS PR was merged and comments were pushed to be addressed in the follow-on PR.
Requirements
No response
Related tickets
No response

Can this be closed now that the RDS work is in?


[Feature] Per-request Variables

Overview
A common use-case for Insomnia is to define a set of requests up front, then only edit a small subset of values afterward (resource IDs, URL path segments, tokens, etc). This can be quite cumbersome if you need to frequently change a value inside a deep JSON structure, for example.
Solution 1 – Using placeholders
Placeholders could be defined in a request and Insomnia could detect these and provide an easy key-value editor to change/update them.
This could be done with a custom Nunjucks tag like {% placeholder "my name" %}, or maybe show an input for all variables that aren't defined in the currently active environment.
Solution N
your idea here

I agree, this would be very useful. I'd like to be able to enter placeholders in the query parameters. When you submit a request, if the parameters have placeholders, it should automatically display a dialog for the user to input the values for the specific request. This would be much more elegant than manually editing the values in the query fields each time you submit a request.

Another example of how this would be useful...
I'm working with a URL format in which the just the parameter value is appended to the URL, without the parameter name. For instance:
https://www.xzy.com/path/to/api/123
Presently, there's no way to automatically build this format in the query tab. I can manually insert a placeholder in the URL, but then I'd have to manually edit the environment each time I want to use a different value. If we had the ability to create per-request variables, then I could insert the placeholder in the URL and it would prompt me for the value each time I submit the request.

So after reflecting on this a bit more, I'm thinking these placeholders should insert raw values, exactly as entered by the user, not a key/value input like in the Query tab. That would give us the flexibility to enter formats like the one I described, without Insomnia messing it up by trying to turn it into a standard query string key/value pair.
Another approach would be to allow the user to select the format on a per-line basis in the Query tab and also in this new per-request tab I'm proposing. You could have a little toggle switch next to each item, to allow the user to select whether the variable will be inserted in raw format or in key/value format.

Definitely it should not be limited to query string key/value pairs.
@bkonia, if I'm understanding you correctly, you would want something like this:
https://www.xzy.com/path/to/api/{% placeholder "my name" %}

And then in the "placeholders" tab there would be a list of key/value pairs:
my name:  123

This would work for me.
However since I would frequently want to edit both query parameters and placeholders for the same request, it would be nice to have them both on the same tab, maybe in a split screen.

Yeah, that's correct.

Here's a wacky idea:  how about being able to switch between sets of parameters and query key/value pairs for a single request?  Maybe even keep a history of them?

I was also looking for something like the Query tab, but for Path parameters.
Currently I use nested properties in environment variables as a workaround, but having per-request variables would be much better.

I agree, per-request variables would be great. We generate all of our services on the fly and because of that we needed a way of testing those calls so we created a generator for Insomnia as well that generates all of the requests. We seperate our requests by service and we currently store all of the variables for all of the requests in the environment overrides on a folder level but we would really like to be able to use different values for each of the calls even if they happen to have the same name for parameters. Screenshots below for visual on our setup.
Folder Seperation

Environment Variables (For Report Service)

Definitely great feature! It would be good to have it.

Thumbs up for this feature as well. Would love to have this.

Chimed in so that stale bot won't mark this as stale again.

I'd like to see an window of key value pairs for all the variables used in the request including this new concept of pre-request variables. This would give you the option to override any variable for the request but reset when you are done with the session.

As already stated in this thread, having a dialog window open when the request is made to fill out any placeholder variables would be a much appreciated feature.
Another idea would be to have these variables stored in a tab on the request much like headers and other fields to avoid opening the dialog every new request. In that sense the user only has to interact if they are missing.

Bumping with a status update request
I'm seeing multiple closed FRs and no commits or PRs mentioning this issue. How far down the line is this feature?

Interesting comparison @jabagawee, I never through of it that way. I'm curious to hear other's thoughts

@jabagawee where is the documentation for Prompt Template Tag? i can't see it under Template Tags

@gschier Ok i figured out that the Promt Template Tag is a built in template variable option. After Testing i can say the following.
Technically yes it does work around the problem i had of being able to provide values per request. However i feel it introduces come UX problems.
a. You need to re-enter values each request. This can be painful if you testing an endpoint with a specific set of variables, like you want to test a specific id for this session, but next time it might be a different id.
b. It is a bit of a hidden feature
c. I think having a section inline at the bottom of the design window that displays what variables have been resolved to and allow you to override any of them could still be useful. It wouldn't be limited to just Prompt Tag variables and would allow you to set values before the request is made. It could be set to reset when you close Insomnia making it session specific.

/users/{% placeholder "user id" %}/posts/{% placeholder "post id" %} vs. /users/:user_id/posts/:post_id, I prefer the latter. Are you happy to type so many letters and finally make such a tedious URL?
Instead of bringing up new tabs or windows, why not to integrate with Query tab? #364 had already pointed out the right solution, which is user-friendly, IMO.

I like the second option @ggicci mentioned in his first point.
/users/:user_id/posts/:post_id
It would be very easy for people migrating from Postman to learn since that's how they do it.

@brilang this wouldn't help with session level variables in a Post body though would it? You could do something similar but maybe don't limit it to variables in the Path but rather any variable that impacts the current request.

There could be an url parameters table right above the query parameters table in the same Query tab.

Is there any progress in this feature?

2020 and still not a sign of this feature :( I guess I have to use postman untill this becomes a thing :(

I need this feature because I want to solve the encoding problem

I think this feature would be awesome, please consider it. thanks for all the hard work

It seems there is already a plugin available: https://insomnia.rest/plugins/insomnia-plugin-path-parameters

Yeah, the insomnia-plugin-path-parameters is the "best" solution so far.
However, it is not completely integrated in the app. For example, the url preview in the Query tab is incorrect.
One thing that might also be a problem is the fact that people who don't have the plugin will have unusable requests. (when you export and share your workspace)  :/

About the template tag, I find this feature not that practical since you are prompted for each and every prompt variable that needs to be resolved when a request is sent.
In fact it would be perfect, only if we were prompted on demand only (click for example) :sweat_smile:.
Otherwise, a "path params" or "request variable" tab would probably do the job.

I see the path params like env variables but to request level. I think I could define path params in my env variables but need to replace for some tests in specific requests..so I see as another layer of env variables but with the highest priority

I wanted to use this, so I forked the app and added a params tab:

After reading the contributing guidelines, I'm not so sure if a PR would be welcome. Let me know!

The contribution guidelines seem pretty normal, I see no reason you shouldn't PR it! On behalf of everyone else watching this issue and hoping for this feature, I appreciate the effort! I will say though that there is already a way to specify placeholders with ctrl+space for environment variables, maybe you could hook into that system?

How cool! I'm new to Insomnia forgive me haha. I should probably add a new type of placeholder then for params; I'll give that a try and keep you updated.

Hi @Vap0r1ze! Usually it's nice to discuss and agree on a particular approach so that there is less need for rework. But, seeing as you already have something running, feel free to create a PR with your design/thought process, and we can discuss specific implementation details further. I, too, appreciate the effort!
I will add that I'm not quite sure on what the best solution for this problem is yet, there are a number of valid approaches suggested here.

Note that there's also a simple params plugin to achieve that feature, specifically https://insomnia.rest/plugins/insomnia-plugin-path-parameters

This is the only reason why I don't use Insomnia currently. I work with a lot of restful APIs, full of parameters in the URLs. I would love to see this given the attention it deserves. <3

Agree. This should be a core feature. The plugin insomnia-plugin-path-parameters is very useful, but also confusing since the url preview is wrongly built.

@bkonia, if I'm understanding you correctly, you would want something like this:
https://www.xzy.com/path/to/api/{% placeholder "my name" %}

And then in the "placeholders" tab there would be a list of key/value pairs:
my name:  123

If you import an Open API specification, query parameters are written slightly different:
https://www.xzy.com/path/to/api/{my_name}

It would be great if that syntax could be supported to comply with the Open API standard.

@bkonia, if I'm understanding you correctly, you would want something like this:
https://www.xzy.com/path/to/api/{% placeholder "my name" %}

And then in the "placeholders" tab there would be a list of key/value pairs:
my name:  123

If you import an Open API specification, query parameters are written slightly different:
https://www.xzy.com/path/to/api/{my_name}

It would be great if that syntax could be supported to comply with the Open API standard.

It would be great if that syntax could be supported to comply with the Open API standard.

Yes, I don’t remember where I got that other syntax from, but the Open API syntax is correct. It should definitely be implemented as you described.

It would be great if that syntax could be supported to comply with the Open API standard.

Yes, I don’t remember where I got that other syntax from, but the Open API syntax is correct. It should definitely be implemented as you described.

Hi @Vap0r1ze do you have builds of your fork? I would like to use it. Without path parameters Insomnia is useless to me but I like UI.

Is there any info about this being implemented?


Translate Concurrent Mode Adoption

I have already uploaded a PR. It is the first time I contribute and I hope to continue doing so.  :smiley:  :eight_spoked_asterisk:
@carburo
References  #316
Closes #313

@carburo  thank you very much for the review! I made your suggestions :) :smiley:


🐛 biome.requireConfiguration config in VSCode is missing

Environment information
CLI:
  Version:                      1.5.3
  Color support:                true

Platform:
  CPU Architecture:             aarch64
  OS:                           macos

Environment:
  BIOME_LOG_DIR:                unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v20.9.0"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         "bun/1.0.23"

Biome Configuration:
  Status:                       unset

Workspace:
  Open Documents:               0

What happened?
I'm using VSCode Biome extension and I'm running some work projects that still require me to use Prettier/ESLint. I have to disable the biome extension every time I need to switch the project, otherwise they get conflicted as Biome runs even if there's no config file in the project.
This configuration seems to be missing from the latest extension version.
https://biomejs.dev/reference/vscode/#biomerequireconfiguration

Expected result
I should not see Biome errors and biome formatter should not be working if there's no Biome config file in the workspace.
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

That's outdate. cc @nhedger

The requireConfiguration option was removed a while back. We’ll be introducing a new enabled option to allow you to disable the extension at the project level. Shipping it in the next version of the extension.

You might want to update the docs in the meantime then. Is there any other option I could use at the moment?

PRs are welcome :)

@piotrkulpinski I've just published a new pre-release (v2024.2.292020) of the extension which includes the enabled option if you want to give it a go.

@nhedger I can see the option, thanks! From what I understand, this is something else though. It just enable/disable the extension just like if I would enable/disable from the Extensions tab.
The old option would let me keep the ext enabled globally but disable it conditionally when no config file was found. I think Prettier has both options available.
Thanks for looking into this!

I think an opt-in makes a lot more sense than an opt-out. Projects which support Biome formatting have a biome.json, and therefore when a file is saved or whatnot you can automatically format.
Projects which don't concern themselves with Biome shouldn't need to add a "biome.enabled": false to a VSCode config just to avoid annoyances when Biome is installed.

I've been super confused by this for months, and I'm just now finding this issue. I agree with @acnebs that the current behaviour is bewildering. I keep finding that Biome is causing huge unexpected diffs in projects that I never created a biome.json in, particularly since almost all projects I work on use double-spaces for indentation instead of tabs (Biome's default). These diffs can mess up PRs, history, rebasing, etc. If I'm lucky, I catch it before it ends up deep in git history.
I don't think it's reasonable to ask every project to add a .vscode/settings.json file. In particular, I don't think it's reasonable to propose adding such a file to large open-source projects. The alternative that you have to carefully juggle settings if you want to avoid committing such a config and avoid committing huge accidental changes.
I do think there's value in allowing Biome to run files without configuration, but the potential to mess up existing projects is high and requireConfiguration is the best solution for someone like me who works on a variety of projects.

I agree with @lgarron. The requireConfiguration option should be reinstated in the VSCode extension for consistency, as it's still present in the Zed extension (see documentation). This would help streamline configuration across IDEs.


Possible ip route conflicts after switching ip route metric to clientNetwork.getBestRouteFromStatuses()

Describe the problem
I have noticed the client-side route selection feature so during today's Netbird workshop for our team I have enabled both routes clashing on 10.4/16 and later today teammates started reporting problems with accessing the primary system so I switched the secondary off and dug into the code.
First thing I have noticed using ip route metric was superseded by:

best peer selection algorithm, which takes Route.Metric as the most significant scoring,
using dedicated routing table 7120 aka netbird (the one I discovered in https://github.com/netbirdio/netbird/issues/2023 )
not providing a metric parameter to created ip route at all

The method is scoped to *clientNetwork, which I guess does not consider a possibility of another NetworkID providing the same CIDR (10.4/16 in our case) resulting in a conflict/race condition on the created ip route entry.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
Either of:

only the best/highest metric route across all networks is selected
create the ip route with the metric argument (seems to be netlink.Route.Priority) which would properly prioritize routes on the ip route level even in case of a clash

watch our not to deregister the wrong route during updates

Are you using NetBird Cloud?
Yes
NetBird version
0.27.7
NetBird status -d output:
If applicable, add the `netbird status -d' command output.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

I've noticed that I was connected to the primary network and the ip route entry disappeared completely after i disabled the secondary network in the web ui

a single clientNetwork seems to represent a very specific <network-id>-<network-range> grouping:

https://github.com/netbirdio/netbird/blob/f176807ebee751289382202569bf6874105e111f/client/internal/routemanager/manager.go#L46-L46
https://github.com/netbirdio/netbird/blob/f176807ebee751289382202569bf6874105e111f/route/hauniqueid.go#L8-L10

making it impossible to know about other input.NetID providing the same input.Network.String() on completely different site


debug application running in the container from image arm32v7/ubuntu

How to debug arm32 application running in the docker?
Description:
I am having a problem with the application debug. The problem is when I try to debug the application with the gdb on the docker I get the error:
warning: Could not trace the inferior process.
warning: ptrace: Function not implemented
During startup program exited with code 127.

and from what I've understood, this is because the QEMU is not supporting ptrace so I cannot use gdb . I was reading about gdbstub built in the QEMU, but there I understood this is for kernel/OS debug and not for the application debug in the running docker container.
Is there a way to debug an application running in the QEMU emulated arm32 container?
Environment:
host:
Linux DESKTOP-2ADE3Q8 <IP_ADDRESS>-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
container:
Linux arm32 <IP_ADDRESS>-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 armv7l armv7l armv7l GNU/Linux
Docker version 20.10.12, build e91ed57

You need to run docker run --cap-add=SYS_PTRACE  ... for ptrace

The solution is to install qemu-user and qemu-user-static in the docker. on the Docker start the application with GDB stub on which you can connect from the host via gdb-multiarch.
which means:

in the docker container start the application built with
gcc -g... like this qemu-arm localhost:1234 ./app.out
on the host environment(my is ubuntu 20.04 LTS) run
gdb-multiarch -q --nh -ex 'set architecture arm' -ex 'file app.out' -ex 'target remote docker_container_ip:1234'
and that is it.


Next branch: after hot reload, redux-connected component not re-rendered in response to redux state change

See this commit for more information and repro case.
Basically in this component hierarchy:
App -> Test -> TestForm

App and Test components are exported wrapped with connect(), and TestForm with reduxForm()
After a hot reload of any component, redux-form fields within TestForm stop updating in response to user input changes.

I have added a separate repro case, which does not use redux-form at all, but illustrates a potential issue when updating components in response to redux store changes, following a hot reload.
Please see the initial commit for additional information.

This appears to have been mostly resolved with an update to react-redux.
More information available here: https://github.com/reactjs/react-redux/issues/636


[Event Bus] Production ready for simple Studio publish events

This epic is part of the Event Bus work documented in https://github.com/openedx/platform-roadmap/issues/28.
The epic covers remaining work for having the new use case in Production, after completing happy-path and sad-path work in other epics. The use case implemented is for course publishing from Studio that could be consumed by Discovery, potentially replacing a small piece of the Refresh Course Metadata batch job. For the purposes of this Epic, we will handle any remaining work, including:

Production Kafka configuration.
Observability
Any other required work that comes up.

Also, adding some preparation work for others coming on to the Event Bus.
Milestone Details:

Title: [Event Bus] Production ready event
Description: See https://github.com/openedx/openedx-events/issues/91 for Epic details.
Due Date: TBD

Important: Date changes need to be fixed in all repos with this milestone defined.

Open issues/PRs with this milestone: https://github.com/pulls?q=is%3Aopen+milestone%3A"[Event+Bus]+Production+ready+event"

All tasks in this epic have been closed. Newly found issues are not using a milestone.


Planner stops deploying agent

Issue: https://github.com/rancher/rancher/issues/37465
Problem
The RKE2 planner would included the manifest for the cluster agent in the
plan for a node. This causes the cluster to go into an updating state on
Rancher upgrade, which is unexpected.
Solution
After this change, the planner will not include the cluster agent
manifest after it is deployed the first time so that the clusterdeploy
controller can take over.
Testing
Updating Rancher and rancher-agent with deployed RKE2 clusters.

An issue has been create in the K3S repo: https://github.com/k3s-io/k3s/issues/5559
And a PR has been submitted to fix the issue pointed out by Chris: https://github.com/k3s-io/k3s/pull/5560

Sounds like a reoccurrence of https://github.com/rancher/wrangler/issues/195

The approach of this solution has changed and the k3s issue is no longer apart of the discussion.

The current implementation of this solution is to include a periodic instruction with the plan until the AgentDeployed condition is true. This periodic instruction will check for the cattle-cluster-agent deployment in the cattle-system namespace. If the deployment doesn't exist, then it will try to create it (and not erroring if it is unsuccessful). Once the deployment is created, the periodic instruction will still run for a little bit, but won't try to overwrite the deployment. This is because Rancher's controllers will redeploy the agent as expected and this instruction shouldn't overwrite it.
The only iffy part of this implementation is dealing with clusters upgraded from v2.6.5 to v2.6.6. These older clusters will have the cluster-agent manifest saved to the manifest directory. In order to avoid RKE2/K3S redeploying these old manifests from the directory when the rke2-server service is restarted, then files should be deleted. This is done through a one-time instruction.
Right now, this one-time instruction is included with all control plane plans after the agent is deployed, forever. This is to ensure that the file is properly cleaned up. Personally, I wish there was some other way to clean this file up. The other possible solutions that I can think of for this would require significant changes (like updating the plan to delete the file on Rancher upgrade and pausing the planner until this plan is successfully applied by the system-agent). I am open to discussion and suggestion on how to make this second part better (and the first part above, but I feel much better about that).

Closing in favor of another implementation.


support for lamdba expression

It would be nice if we can add the lamdba expression support.

Was thinking about this, but this would probably involve writing a parser of some sorts? What kind of use cases and what kind of syntax do you have in mind?

Here is what i am thinking about, we can keep it as simple as possible just using eval function in python. We always assume that the input is a string of lambda expression.
>>> plus3 = "lambda x: x + 3"
>>> eval(plus3)
<function <lambda> at 0x1013a52f0>
>>> a = list(range(5))
>>> list(map(eval(plus3), a))
[3, 4, 5, 6, 7]

To be honest, I would like to avoid using python-code-as-string arguments (and the usage of eval in particular).
I'm closing this in favor of #5 as I don't really see any concrete plan to implement this.


seg fault on Rhea in coupler

coupler version: fcd22e5
gene version: https://github.com/wdmapp/gene/commit/1a5e1c77affb85a00e44f66d0fcb3e03f8d7bb2c
xgc version: https://github.com/wdmapp/XGC-Devel/commit/6bd3ad3fda4f4d37897dad338a308785a2c51fef
testcases version (using run_externalCpl.yaml): https://github.com/SCOREC/testcases/tree/f15a37217a51d0ff467f0811b724b137982ee43a
wdmapp-config version: (used to install xgc and effis, and the dependencies for gene and coupler) https://github.com/SCOREC/wdmapp-config/tree/728d07b8f711ffedf1206072a8326dfe199f82d6
On AiMOS we can execute one timestep of the cyclone test case (https://github.com/wdmapp/testcases/tree/4ae055ea046d354c9026ec54344dcd710f6ac20b/run_1/aimos) and exit all three executables without any obvious errors.
On Rhea, using gcc 8.4 and<EMAIL_ADDRESS>running the cyclone case fails at this memory allocation:
https://github.com/SCOREC/wdmapp_coupling/blob/fcd22e5abdf1b78a5fec1e842b66496272cc95e0/src/importpart3mesh.h#L150
which is called from here during the first RK loop:
https://github.com/SCOREC/wdmapp_coupling/blob/fcd22e5abdf1b78a5fec1e842b66496272cc95e0/src/dataprocess.cc#L320
whose parent function AssemDensiSendtoPart3(...) is called from cpl.cc here:
https://github.com/SCOREC/wdmapp_coupling/blob/fcd22e5abdf1b78a5fec1e842b66496272cc95e0/test/cpl.cc#L136
The values of vertnum seem OK, 69 on ranks 0 and 1 and 1371 on ranks 2 and 3, so I suspect that the error is triggered by an adios failure.  As a sanity check, we can run on Rhea with BP4.  It isn't clear though if SST in-memory transfers are causing problems here.
For the record, the final output of each executable is attached.  output.tar.gz.  Note, the coupler output contains multiple print statements that were not part of the coupler version above.  That modified version is here: https://github.com/cwsmith/wdmapp_coupling/commit/68a1032fa5a9ebac25dbacefaa9e7f53d88d02d3
From what I can tell, gene and xgc failures are a consequence of the coupler failing:

gene: adios2_open fails when trying to open cpl_field.. which does not get written because the coupler fails https://github.com/wdmapp/gene/blob/1a5e1c77affb85a00e44f66d0fcb3e03f8d7bb2c/src/coupling/coupler_pproc.F90#L253
xgc: fails while waiting for density from the coupler ... which does not get written because the coupler fails before sending density to XGC

@suchyta1 Do you see anything obviously concerning in the output?  The run directory on Rhea is here:
/gpfs/alpine/phy122/scratch/cwsmith/testWdmCpl_manualCplBuild_3

I met the similar problem on AiMOS  when I debug the code. The problem on AIMOS was already solved on AIMOS by restricting my_pez==0 here: https://github.com/phyboyzhang/gene/blob/dba61187c7c284df3db211414870400df627cbd9/src/coupling/XGC_grid.F90#L355
It's still due to the transpose of the processes of subcommunicator.

Closing due to coupler rewrite.


🌱 Setup api.securityscorecards.dev

Setup https://api.securityscorecards.dev. This will be used by @rohankh532 to return POST and GET Scorecard results.
How it will work:

Scorecard GitHub Action will make the call POST https://api.securityscorecards.dev (with the right payload) to verify and store the result.

A publicly accessible endpoint can call GET https://api.securityscorecards.dev/{platform}/{org}/{name} to get the latest stored Scorecard result. E.g GET https://api.securityscorecards.dev/github.com/ossf/scorecard.

Use the GET API in sheilds.io.

@rohankh532 fyi.

Is there a design doc that you can share? What is the storage behind this? Any information would be helpful.

Is there a design doc that you can share? What is the storage behind this? Any information would be helpful.

@rohankh532 is documenting his work as he progresses through the project (doc will be publicly available) but we don't have a shareable end-to-end design doc.
But I can see there is lack of clarity about the architecture here which is causing confusion. Maybe one of us (me, @laurentsimon, @asraa, @rohankh532) should do a short presentation in the upcoming bi-weekly to talk about the overall plan. Will add this to the agenda.

Is there a design doc that you can share? What is the storage behind this? Any information would be helpful.

@rohankh532 is documenting his work as he progresses through the project (doc will be publicly available) but we don't have a shareable end-to-end design doc.
But I can see there is lack of clarity about the architecture here which is causing confusion. Maybe one of us (me, @laurentsimon, @asraa, @rohankh532) should do a short presentation in the upcoming bi-weekly to talk about the overall plan. Will add this to the agenda.

Thanks


Change to cipher AES-256-CBC?

Can i easily change the cipher AES-128-CBC into cipher AES-256-CBC in the script to get a harder security?

Just replace AES-128-CBC with AES-256-CBC in the script.
This change will not improve real world security but will noticeably decrease performance.
The advantage of maintaining an open source project vs being a commercial VPN provider is that I don't need to use shitty and false marketing with my users ;)

Hi,
I'm not a security expert. I just have a question.
I see the code use AES-256-CBC by default.
Do we need to change AES-256-GCM for avoid padding attack?
https://security.stackexchange.com/questions/201144/is-aes-128-cbc-already-broken
Thanks, :)

@grtfou no.
AES-256-CBC is configured for compatibility purposes. But as already mentioned in this thread, in modern OpenVPN versions AES-256-GCM will be negotiated during connection.


Check for object modification before save

Adds updated and created fields to the models and checks whether an object has been updated while it is being edited. This is done by saving the updated time of the current item at view construction in the user session and check whether this corresponds to the current updated time just before saving. Fixes #17, but not all views show the error.

I fixed some forms not displayed the form errors. The forms in question were:

Rating update
Order update