Refactor/tests

FYI @kamilkrzyskow

I've cleaned up and made every test file independent
There's still work to do, but at least we now have only ONE dummy mkdocs.yml with explicit mkdocs config on every test

Woah you work fast. Sorry for the holdup on my end and thanks for laying the groundwork for me.
MkDocs 1.4.2 still supports Python 3.7, so maybe it's still worth supporting it as long as MkDocs does it too 🤔

MkDocs 1.4.2 still supports Python 3.7, so maybe it's still worth supporting it as long as MkDocs does it too thinking

I did not actually drop 3.7 support from pip's perspective, but I find it useless to keep running linters and QA stuff on it.


[Accelerate] Declare availability where missing, remove where redundant

Accelerate.vImage, .vDSP and .vForce were introduced in macOS 10.15 / iOS 13, but they are currently declared without availability.

Add the missing @available attribute to them and their extensions.
Remove newly redundant @available attributes from the ~500 entry points defined in vImage/vDSP/vForce extensions. (Their availability is now inherited from the top-level extension.)
Adjust remaining declarations that have 9999 availability to reflect the actual OS versions that introduce them.

@swift-ci test

@swift-ci test

Build failed
Swift Test Linux Platform
Git Sha - 2cc38fcace0ea60df8009535247772d697a531e7

Build failed
Swift Test OS X Platform
Git Sha - 2cc38fcace0ea60df8009535247772d697a531e7

@stephentyrone In its current state this will conflict with your 9999 PR :(
Feel free to merge that first if you like -- I already have a version of this based on that.

@xymus, did you get in your change for availability on extensions to propagate to members? If not, this isn't safe to take yet either.

@jrose-apple Is that a new issue? I think this has "always" worked:
@available(macOS 42, *) // nonsense "future" version
extension Array {
  func foo() {
    print("Hello")
  }
}

[1, 2, 3].foo() // error: 'foo()' is only available in macOS 42 or newer

(I can revert the last commit if we need to keep the attributes on the individual members, but then we'll also need to review the codebase to add them everywhere. I think not even Accelerate declares @available on every new entry point in every new extension.)

This should be safe, the availability attribute worked as expected to declare an introduction version on extensions. My fix (#24997) was for the use of unavailable and obsoleted on extensions, which are still broken. #24997 been reverted but the blocker should itself be fixed soon.

Merging to fix the ABI issue of missing @available decls. I'll submit a cherry pick to 5.1 in a jiffy.


[Bug]: Disabled users can set up library administrators

ODC version
odc430
OB version

What happened?

What did you expect to happen?
Disabled user unable to display
How can we reproduce it (as minimally and precisely as possible)?

Create users, disable users
Add users within the project

Anything else we need to know?
No response

Fixed In Commit af3b00619b23afac5d27a010c0b1bc5bffdbae67
------
畅晚
Tue Jun 4 15:46:46 2024 +0800

pass


Github:-Added issue template for doc and slack url

Signed-off-by: Biki-das<EMAIL_ADDRESS>this one is related to #1111 , i messed up the last pr with some accidental push , sorry for that 😅, here is the new one with the required changes.

@oleg-nenashev ping.


Add log unary interceptor for WebAPI

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

/approve


feat: add scenarios for evaluation

Description
Changes proposed in this pull request:

Add Scenarios for Black Box testing.

Related issue(s)

closed in favour of #133


Is okay to put view in android ViewModel?

Is okay to put view in android ViewModel.
Refer on this Caution: A ViewModel must never reference a view, Lifecycle, or any class that may hold a reference to the activity context.
Links: https://developer.android.com/topic/libraries/architecture/viewmodel

Looks like @wisnukurniawan has a point @alphamu please reopen this issue.
Also on your blog post on Medium @joseAlcerreca has suggested few points to consider in the implementation.
https://medium.com/@JoseAlcerreca/i-dont-think-you-re-considering-the-full-functionality-of-livedata-3c7d6ac2475
Following his [this blogpost for Do & Dont's in MVVM] (https://medium.com/androiddevelopers/viewmodels-and-livedata-patterns-antipatterns-21efaef74a54) your pattern breaks few of the MVVM rules.

You're both right, not just views, but also the Listeners were a bad decision the Listeners have a reference to the viewmodel as the listeners are annonymous inner classes, meaning the listener is no GC'd and thus the View is not GC'd, the View has a reference to Context so the whole activity is not GC'd...
I've known of it for a while, it was a poor decision.
I'll fix it at some point, but I don't have the free time at the moment to re-implement it.
Thanks for bringing it to my attention.

You're both right, not just views, but also the Listeners were a bad decision the Listeners have a reference to the viewmodel as the listeners are annonymous inner classes, meaning the listener is no GC'd and thus the View is not GC'd, the View has a reference to Context so the whole activity is not GC'd...
I've known of it for a while, it was a poor decision.
I'll fix it at some point, but I don't have the free time at the moment to re-implement it.
Thanks for bringing it to my attention.

Thanks for a quick reply, hope you'll refactor is soon, @alphamu do you have any article/tutorial which I can refer for the right way of implementing validation on form in MVVM pattern?

Well, the fastest change to make would be to move the focus listeners to the activity and pass them into the data binding and that should fix most of the issues. A fancier way would be to create a custom binding that calls a listener and then use that to call a function in your ViewHolder, something like app:onFocus='(view, focus)->viewHolder.onUsernameFocus(focus)'
Or you can even set a value in live data that way.
Hope this helps, in on my phone so it's really hard to go into more detail.

I think the Google guy is getting at the fat that if you just do 2 way binding and listen for tact change, you don't need a focus listener and can use mediatedlivedata to see how the data changes and react from there.

Okay, after having thought about this.
I don't see a problem with the code.
The ViewModel has a reference to the OnFocusChangeListener, but the OnFocusChangeListener does not have a reference to the View (the view passes itself in, we never retain a reference to it).
So, when the activity is GC'd the View can be garbage collected because the while the OnFocusChangeListener has reference to the ViewModel, it does not have a reference to the View.
The View has a reference to OnFocusChangeListener, so if the Activity is destroyed (unreachable), the activity has no reference, the View's it holds are not reachable because the ViewModel and the OnFocusChangeListener do not have reference to them.
If I'm missing something here, please tell me what it is.


Adds InfluxDB backend

Adds support for sending to InfluxDB as a backend with both pre-1.8 and post-1.8 API.
@adampetrovic - I vaguely recall you've spent a bunch of time with InfluxDB, if you could sanity check the "am I using InfluxDB correctly?" aspects, it would be much appreciated.
Closes #14

Everything seems reasonable but I have never worked with influxdb in the past so I am not sure if the client's behaviour is what is expected.

It works at least:

(there's also events working, but they're not in view)
I've also got the callout for "please report issues".  In theory it should work with enterprise and all that jazz, but I have no way to confirm that.

Sorry, was off sick today. Everything looks good to me from a semantic point of view. It has been a while since I played with InfluxDB :P

No worries, thanks for the input. Get better soon!


FancyZones Activation shortcut isn't working

Microsoft PowerToys version
0.60.1
Running as admin

[ ] Yes

Area(s) with issue?
FancyZones Editor
Steps to reproduce
I'm not sure, it stopped working and I don't have a clue why.
PowerToysReport_2022-07-29-08-21-22.zip
✔ Expected Behavior
FancyZone Editor should pop up on the monitor that my cursor is on.
❌ Actual Behavior
Nothing happens, the editor does not appear.
Other Software
No response

Hi @VOEBenge
You are using Win+T as shortcut to toggle the editor but this isn't working since is used by Window to focus taskbar icons.
If you change the shortcut to one that isn't used by the system you should be able to start the editor.
Note for devs: FZ is using hotkeys.

facepalm thanks, Win+X had worked before, and then decided not too. I'd not realized that both of these were already assigned in Windows.


Update UG for v1.4

Write UG intro sections 1.2 and 1.3
Specify param requirements for s/STATUS (#218)
Added a note for section 4.7 to clarify the persistence of sort commands on list order (#245)
Change 'lexicographic' to 'alphabetical' for sort -i command

Codecov Report

Merging #253 (e571cce) into master (2196dbc) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #253   +/-   ##
=========================================
  Coverage     54.35%   54.35%
  Complexity      530      530
=========================================
  Files           102      102
  Lines          2366     2366
  Branches        317      317
=========================================
  Hits           1286     1286
  Misses          956      956
  Partials        124      124

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


modidfied user info to select the chain based on a prefix

could not validate PR due to non-standardized commit messages. Applying same changes to refact/UserInfo branch and merging to main


[C] Add logging for the untethered subscription state change

This PR contains the following changes:

Logging of the untethered subscription state change
Add missing options to the cppbuild's help output
Fix logging constants to be power of two

For the logging changes I'm not sure if aeron_driver_context.c is the right place for the implementation of the aeron_untethered_subscription_state_change function or if it would be better to define it as inline in the aeron_driver_common.h.

aeron_untethered_subscription_state_change can probably be inlined and placed in a header. But rest looks pretty good.

@tmontgomery I've declared function aeron_untethered_subscription_state_change as inline static in the aeron_driver_common.h and it did the trick.
After the changes I get two warnings:
aeron-driver/src/main/c/agent/aeron_driver_agent.c:121:13: warning: unused function 'aeron_free_logging_ring_buffer' [-Wunused-function]
static void aeron_free_logging_ring_buffer()
            ^
aeron-driver/src/main/c/agent/aeron_driver_agent.c:130:13: warning: unused function 'aeron_set_logging_mask' [-Wunused-function]
static void aeron_set_logging_mask(uint64_t new_mask)
            ^
[ 48%] Building C object aeron-driver/src/main/c/CMakeFiles/aeron_driver.dir/agent/aeron_driver_agent.c.o

The functions are being used only in tests. Not sure if there is a better way to do it.


Add FEC on lossy links

Please enhance MLVPN with FEC support like it https://github.com/wangyu-/UDPspeeder

Have you tried configuring as per https://github.com/wangyu-/UDPspeeder/wiki/UDPspeeder-openvpn-config-guide in order to tunnel traffic from one tool into the other?

Yes me try, but it can't bind to interface. I think it's not hard to work add FEC to MLVPN, it can bereally useful on lossy link. For example my country has only one crappy uplink and I found, MLVPN link loose about 25% of UDP packets.

Sorry, but I will not implement this myself in MLVPN.


Add classes to elements

Fixes #9 and adds classes to all elements the directive touches or creates.
Had to change webpack config to get the project to compile typescript: ts-loader doesn't have the include option, so instead used webpack's include.

Hi Allen,
Thanks for the merge. I didn’t build the dist or bump the package version because I wasn’t sure if I should do that. Let me know if you want me to and I'll submit a new PR.
-=-
Brandon Bird

On Sep 27, 2017, at 3:22 PM, Allen Kim<EMAIL_ADDRESS>wrote:
Merged #15 https://github.com/ng2-ui/sticky/pull/15.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/ng2-ui/sticky/pull/15#event-1268739114, or mute the thread https://github.com/notifications/unsubscribe-auth/ADhp1sXd7-JpP_gYaovhCd389IXARdXFks5smsqJgaJpZM4PmSOJ.

I will build and bump it. I hope I don't forget about it tonight or tomorrow.

Great, thanks.
-=-
Brandon Bird

On Sep 27, 2017, at 3:38 PM, Allen Kim<EMAIL_ADDRESS>wrote:
I will build and bump it. I hope I don't forget about it tonight or tomorrow.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/ng2-ui/sticky/pull/15#issuecomment-332675737, or mute the thread https://github.com/notifications/unsubscribe-auth/ADhp1ncwHLv83k-TXGmFL8IlngeBqrG1ks5sms5jgaJpZM4PmSOJ.

0.6.2 released. @brandonbird Let me know if you want to be the admin of this repo. I would gladly add you as a team member, so that you can push and publish it.

Hi Allen,
If you want to add me that’s fine, but I’m also totally ok with just submitting PRs as necessary (I had a pressing need to do the last one; not sure if I’m going to be doing any more anytime soon).
Thanks,
Brandon

On Sep 27, 2017, at 7:04 PM, Allen Kim<EMAIL_ADDRESS>wrote:
0.6.2 released. @brandonbird https://github.com/brandonbird Let me know if you want to be the admin of this repo. I would gladly add you as a team member, so that you can push and publish it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/ng2-ui/sticky/pull/15#issuecomment-332705929, or mute the thread https://github.com/notifications/unsubscribe-auth/ADhp1vP7HCcLKCGrLisPblkOWAse731_ks5smv6WgaJpZM4PmSOJ.


Add --pool-path to vmfind to specify --pool as exact path parent/chil…

…d/resourcepool

Hi, I'm really sorry I didn't see this come in. Looking at it in the morning!

Merged, thanks!


Make CartoDB labels layer appears with basemap style

No possibility to move it.
Same style as true basemap.

After a talk with @piensaenpixel (and with @saleiva indirectly), let's leave the layer where it is, but it should be disabled, and we couldn't move it.

:ok_hand: by disabled you mean having no click event and… a distinctive style?

Yep, no click and probably same style than the "real" basemap.

Yeah, but I mean, a disabled state too?

do we have that state right now?

I don't think so, no.

Done by @alonsogarciapablo, closing.


Add option to remember and switch between chats, and an option to export/import chats

Great project :sunglasses:
I don't know if this feature (two features?) is already built-in but if it is it's not obvious ...
The problem
It's a problem to continue previous chats, as well as to switch topics. Also if you want to save a chat for future reference.
The solution
Some UI that allows you to go back to previous and switch between chats (like in the ChatGPT UI), and an Export button for saving conversations to md files.
Alternatives
A workaround would be to manually copy paste the whole chat and  save them to a file and then refeed them to the LLM to continue.

Hi, There is a sidebar you can toggle which has all the features you've listed.

When #123 gets merged to main, the sidebar should be toggled on by default if the screen size is big enough.
Thanks!

Oh :sweat_smile: - that's great! I really didn't see it there - it makes sense to have it on by default.
Thanks :pray:


Migrate from p5 to Tkinter

Since I'm not using p5 for its vector operations anymore, I should change my GUI to Tkinter for additional functionality that I want later on.

Solved with #5


fix: add an internal page.locatorRace

Using Locator.race is not possible to use via a type-only import whereas page.locatorRace could be used with a type import.
That is useful for libraries like @puppeteer/replay that don't have a static dependency on puppeteer.

@jrandolf marked as internal as discussed offline


Add record encoder

this patch record encoder(see: #4 )

Codecov Report

Merging #5 (72b11b8) into master (be27a72) will decrease coverage by 2.03%.
The diff coverage is 33.78%.

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


Enhancement: Gridsearch and random_state

#46 Solved
#47 There is still no automatic one, and the experiment shows that grid search is not providing large improvement for the model performance. Still, users can follow the grid search tutorial here: https://chenyangkang.github.io/stemflow/Examples/07.Optimizing_stixel_size.html


Provide default values for environment vars

I was just spinning up my own version of this, and it's a pain to have to set a whole bunch of stale env vars which I am not using 😆

Related to #2? Also if you have a list of those pesky undefined var names, please list them out.

semi-related to #2. The list is here: https://github.com/astropy/astropy-bot/blob/master/changebot/webapp.py#L18
obviously the required tokens are requried, would be good to check if the stale checker was enabled before the others were required though.

This would involve quite a bit of clean up and refactoring. Maybe a sprint at pyastro... :wink:

sprinting on the bot is already on my ever growing list for pyastro 😉

Closing this as I think now only a strict minimum of env vars are required (and by baldrick, not here)


Explanation of scope

The readme says that cretonne is supposed to be a code generator for WebAssembly, but it's a bit unclear what that means, seeing how there doesn't appear to be anything to actually do with wasm in the code.

I heard that cretonne is meant to have inter-procedural optimizations as another layer built over top. Is this true, and always going to be the case?
Does another tool to translate wasm to cretonne IR need to be built in order to generate code for wasm?
Is it in scope for cretonne to output to wasm, or is it only intended to output to native code? (e.g. will I be able to use cretonne as a pure-rust binaryen alternative?)
Is cretonne meant to be useful in both JIT and AOT configurations?

Preferably, the readme or documentation should be able to answer these questions.

Cretonne is still in development, so big pieces are still missing.
Inter-procedural optimizations
Cretonne is meant to be a part of a larger compiler or JIT that prioritizes fast compilation times. In particular, it must be possible to parallelize compilation to make use of multiple cores. This is achieved by making a function in Cretonne IR an independent data structure without external references. When a Cretonne function refers to a global variable or calls another function, it uses the name of the external object instead of a pointer.
A later linking phase depends on the framework embedding Cretonne to resolve these references. Cretonne won't have the global data structures needed to do that itself.
Inter-procedural optimizations necessarily need to work with multiple functions at once, and so they need a closer interaction with the larger compiler framework and how it does concurrency. I consider this out of scope for Cretonne, at least initially.
Cretonne could provide useful functions for an IPO framework, for example "inline this function at this call site".
Translating WebAssembly to Cretonne IR
This hasn't been built yet, by I expect there will be a lib/wasm crate which can translate binary WebAssembly to Cretonne IR. Again, since Cretonne is supposed to support concurrent compilation without imposing a way of managing threads, this crate should support translating wasm functions individually.
Translating Cretonne IR to WebAssembly
This is an interesting idea that I didn't consider initially, but I think it could work.
A subset of the Cretonne instruction set is equivalent to WebAssembly and can be translated easily. A larger subset of the instructions could be transformed into wasm-equivalent instructions using the legalizer framework.
Some instructions are too low-level to be translated to WebAssembly. This includes raw loads and stores (as opposed to heap_load and heap_store) and things like taking the address of a stack slot. When LLVM is translating C/C++ to WebAssembly, it deals with these things by sandboxing. It maps loads and stores to the wasm heap and moves stacks objects to a shadow stack in the heap if their address escapes.
JIT vs AOT compilation
I see three tiers on the AOT-JIT scale:

AOT-compile a program to generate an executable ELF or similar that can be executed later.
Compile an entire WebAssembly module before running its main function.
JIT-compile individual functions on demand just before calling them. Use inline caches and other speculative optimizations that may cause deoptimization.

Cretonne is initially targeting 2. as a second-tier WebAssembly compiler for Firefox. I imagine its scope expanding in both directions.


fixed dataloading and wandb entity loading

The get_clip_val_transforms function was called incorrectly - Instead of passing the image size, the run_name was passed.
The wandb entity was not specified in wandb.init despite being specified in the config.
Additionally, I applied the Black formatter to ensure consistent and readable code formatting.

Yup, that's a nasty little bug. Good catch.


Sorry, something went wrong!

Issue resides in giving a 500 response in requesting api/search-file-chunks

I am currently experiencing no issues with the application. However, it is important to ensure that you possess an active account with available usage. Neglecting to verify the status of one's trial period may result in unsuccessful attempts to use the demo.


Results feedback SDG12.4 [CO2 emissions]

SDG:12
Target:12.4
Action or Topic: ...environmentally sound management of chemicals and wastes...reduce their release to air, water and soil
Feedback: CO2 is not mentioned in phrase 3, which searches for specified emissions. I'm not sure if it should be or not. Adding it may bend the phrase quite a bit towards climate change. Should CO2 be added?.
Example result: https://doi.org/10.1016/j.jenvman.2021.114055

The target interpretation is currently "This target is interpreted to cover research about a) sustainable/environmentally sound management of chemicals thoughout their life cycle, and research about international agreements on chemical management. The target also covers b) research about sustainable management of all wastes and c) reducing their release to air, water and soil, as well as research about international agreements on management of hazardous wastes."
Focus is on wastes and chemicals. The topic page from the UN on waste and chemicals has no section on CO2 (https://sdgs.un.org/topics/chemicals-and-waste). I think most would describe this as something else (not a waste or chemical in the sense of the target). So adding reduce + CO2 + emissions goes very far outside our interpretation.


Add RESP3 support

https://github.com/redis/jedis/issues/2103

Remember to consider https://github.com/redis/redis-specifications/pull/12

Current thinking

[ ] Parse and support  the resp protocol version from the URI
[ ] Ensure this is property supported by the connection options
[ ] Validate if this works for cluster, or if the configuration needs to be changed
[ ] Decide if extending the existing decoder, or implementing another decoder (is this truly a super-set)
[ ] Determine how to handle responses whose type changes due to the protocol change
[ ] Extend testing to RESP3, at the very least integration tests
[ ] Update the README


Dynamic dates under the blog

It shows 10 days ago under the blog but it should be dynamic.

Can i work on this issue?

@thebishaldeb  Please

Email ID validation needs to be done first.

can I work on this?

@thebishaldeb  I will solve both the issues.Please assign this issue to me

One issue per PR actually.
Better you do this, I'll give the prev issue to the other person, since everyone deserves a fair chance.


Fix img height for visibility classes

I'm using two different images in my template, when swapping to the mobile version, max-height: 0px; was preventing the image from displaying.

@rickysullivan Do you have a test case we can use to make sure this fix works and we can add as a regression test? We're adding them to the test folder but even a code snippet will help.

Will get onto it. Sorry have been away.

Looks like it was fixed.

Ok Awesome!


Fix readme example

The example in the readme was incorrect. The app.js file would have been filtered out if it was in the assets directory.

Good catch. Thanks!


python/pip: ModuleNotFoundError after doing user install

Steps To Reproduce
Steps to reproduce the behavior:

nix-shell -p python3 python3.pkgs.pip
pip install --user bikeshed
cd path/to/dev
bikeshed spec

Traceback (most recent call last):
  File "/home/meghan/.local/bin/bikeshed", line 5, in <module>
    from bikeshed import main
ModuleNotFoundError: No module named 'bikeshed'

Expected behavior
https://github.com/tabatkins/bikeshed to run properly
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.52, NixOS, 22.05 (Quokka), 22.05.1543.71d7a4c037d`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.8.1`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

nvm its packaged as nix-shell -p bikeshed

nvm its packaged as nix-shell -p bikeshed

Is there a way to run modules that are not packages for NixOS?


Add power resource

For #170

[x] power production and consumption
[x] if low power, production of structures & units is twice as slow
[x] if low power, a REFINERY will deposit resources twice as slow
[x] Make 'threshold for minimum power production' configurable, with a sensible default of 25%

BONUS:

[x] add repair ability of structures? (no, deferred to https://github.com/Fundynamic/dune2themaker4j/issues/167)

Coverage increased (+0.7%) to 80.025% when pulling ad6cc13405a4ab23888ea489eb7a812e6344ea8b on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.

Coverage increased (+0.6%) to 79.966% when pulling 961eea33d3219005b4b8213ce2658f0fb88e6d61 on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.

Coverage increased (+0.6%) to 79.976% when pulling cc5ca7fa2e6f41f785925022173d905710200289 on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.

Coverage increased (+0.6%) to 79.976% when pulling cc5ca7fa2e6f41f785925022173d905710200289 on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.

Coverage increased (+0.6%) to 79.976% when pulling 2df8782a6aab966a7344ed20769cf01144d6c081 on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.

Coverage increased (+0.6%) to 79.976% when pulling 0f5beb893d139e400b9bdd722d90157e156eceed on feature/power-resource into 6b3245f73e77a11ed27473aa6c00536a359f42b2 on master.


Allow --quiet to be passed to policy file

Currently, our policy file completely fails
if the quiet option is passed in.
This actually causes service actions to hang b/c
--quiet is passed as the name which means that
grep expects the search string to be passed into
STDIN (thus hanging).
Adds explicity support for the --quiet flag to
ensure that service name is still captured.

please test this

Test FAILed

please test this

Test PASSed

I keep hitting this when I run puppet apply from the command line (and I keep having to cherry pick this patch into my other branches). Any way we can prioritize this?

please test this

Test FAILed


python3Packages.hstspreload: 2021.7.5 -> 2021.8.1

Motivation for this change
Update to latest upstream release 2021.8.1
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
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 packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 133262 run on x86_64-linux 1

2 packages built:

python38Packages.hstspreload
python39Packages.hstspreload

Result of nixpkgs-review pr 133262 at 14a6ba8e run on aarch64-linux 1

2 packages built successfully:

python38Packages.hstspreload
python39Packages.hstspreload


SAA-1128: Update duplicate activity summary validation

*Update duplicate activity summary validation to check active activity names and disable this option
*Drop the constraint for the activity summary field to enable the function to fully handle a duplicate name request
*Move the h2 integration test migration dependency into the test folder to ensure that it only runs in the required environments

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

Project coverage is 86.92%. Comparing base (b41937a) to head (ef94a7e).

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #795   +/-   ##
=========================================
  Coverage     86.92%   86.92%
  Complexity     3569     3569
=========================================
  Files           369      369
  Lines         12465    12465
  Branches       1029     1029
=========================================
  Hits          10835    10835
  Misses         1154     1154
  Partials        476      476

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


Remove all usage of std::chrono

Visual Studio 2010 doesn't support it.

From what I can tell, std::chrono is now only unconditionally used in a handful of tests, right?

Yes, which is fine. The core and the C++ bindings don't anymore.

Can we close this then?

I suggest closing.

done


@wdio/runner: Error: Failed to create session. getaddrinfo EAI_AGAIN selenoid

Hi! I am trying to run webdriverIO tests on gitlab using selenoid.
My setup looks like this:

In wdio.conf file I have like this: exports.config = {
hostname: 'selenoid',
port: 4444,
path: "/wd/hub",
....}

Added to browser capabilities the following options:

here is gitlab-ci.yml file:
cache:
paths:

node_modules/

default:
image: alpine:latest
variables:
FF_NETWORK_PER_BUILD: 1
stages:

test

test:
stage: test
services:
- name: aerokube/selenoid:latest
- name: selenoid/chrome:latest
variables:
# for the hub
HUB_HOST: selenoid
HUB_PORT: 4444
GRID_BROWSER_TIMEOUT: 45000
GRID_TIMEOUT: 45000
# for the node-firefox
SE_NODE_SHM_SIZE: 2gb # this does not have any effect, because it can only be set in the 'config.toml'. Therefore, I can't ramp up the No. of instances.
SE_EVENT_BUS_HOST: selenoid
SE_EVENT_BUS_PUBLISH_PORT: 4442
SE_EVENT_BUS_SUBSCRIBE_PORT: 4443
SE_NODE_GRID_URL: http://selenoid:4444
LOCAL_ADMIN_PASS: "$LOCAL_ADMIN_PASS"
STANDARD_TIMEOUT: "$STANDARD_TIMEOUT"
before_script:
- echo "This pipeline was started by '$CI_PIPELINE_SOURCE'" # possible values are push, web, schedule, merge_request_event, etc.
- echo "The environment passed was '$ENVIRONMENT'"
- echo "The test suite passed was '$SUITE'"
- if [[ "$SUITE" == "" ]]; then
  echo "The variable 'SUITE' is empty or was NOT passed. Setting default value as SUITE=healthChecks";
  export SUITE="healthChecks";
  fi

- echo "The job will now run with the value suite=$SUITE";

- apk update -q
- apk add --update nodejs npm openjdk8-jre -q
- npm --silent install
- node --version
- npm -version

script:
- ENV=$ENVIRONMENT npm test -- --suite $SUITE
after_script:
- npm run generate
artifacts:
name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
when: always
paths:
- logs
- report/allure-report
But an error occurs:
2023-12-11T14:52:54.268Z INFO webdriver: Initiate new session using the WebDriver protocol
2023-12-11T142023-12-11T14:53:14.692Z ERROR @wdio/runner: Error: Failed to create session.
getaddrinfo EAI_AGAIN selenoid
Could you help me please to setup correctly wdio? Thank you!

@en-aplecan we are Golang developers, I would address this question to wdio support. But your issue is probably that you are trying to access domain name selenoid, port 4444 which does not exist. Make sure your are using correct container name.


Make use sys::rwops as ll and use sys::version as ll public so rust-sd2_mixer can build properly

This is currently causing errors with rust-sdl2_mixer because it relies on those two use statements being public. This seemed like the easiest fix to me, but should rust-sdl2_mixer be using sdl2-sys directly instead?

I believe rust-sdl2_mixer should be using sdl2-sys directly, if possible. Could you check with the maintainer? If they don't want to I'll merge this instead.

Alrighty, I'll post back here when I have more infos

tracking in andelf/rust-sdl2_mixer#24

I was able to get rust-sdl2_mixer building by directly depending on sdl2-sys. Closing.
You can check that PR here: andelf/rust-sdl2_mixer#24


Add more detail in Gates doc

https://github.com/quantumlib/Cirq/blob/ca7d55422eb53bb3962209aba7527f01cd3ba0b4/docs/gates.md
Gates under heading "Other Common Gates" should be described in more detail. Under Xmon gates, cirq.Z / cirq.Rz must have more detail added.

Revamped gates document and added more detail throughout.


should name take precedence over alias?

state: 0c11be31eb5967fdd0bf3c41709496005fafa240
authors:
  - name: The soccer team members
    alias: Rafa
cff-version: "1.2.0"
message: "test of author inputs"
title: the title

is currently converted to
{
  "creators": [
    {
      "name": "Rafa"
    }
  ],
  "title": "the title",
  "upload_type": "software"
}

The tradeoff happens for:

apalike
bibtex
endnote
ris
zenodo

but not schema.org or codemeta, because they define alternateName so both the information from name as well as that from  alias can be retained.

Answer: yes.
Fixed in PR:

#323

Closing this issue


Update acme-dns.service

Set working directory to service users home.
If it's not set then the service defaults to "/" and it fails to create the api-certs directory.

Coverage remained the same at 93.831% when pulling da66167794e0eb874b5492ec08805143cd14781e on lateagain:master into e1f1d6af34f82b3b75021883a02f72db9d9d41b5 on joohoi:master.

Thanks for the PR! This looks good, merging!


Feature branch QA payment issue

In this branch https://expensify.slack.com/archives/C01GTK53T8Q/p1686587441593309 we have asked contributors to test on a feature branch before we merge this to main https://github.com/Expensify/App/pull/20473
The reward has been halved since this is a feature branch and there was supposed to be a lot of bugs but this will help us find them sooner than if only engineers test the app.
The rewards is $125 per one valid reported bug.
they should all be fixed in this PR https://github.com/Expensify/App/pull/20473
cc @Beamanator

Already created this one for this purpose: https://github.com/Expensify/App/issues/20757
So feel free to close whichever one you want haha

Clsoing in favour of https://github.com/Expensify/App/issues/20757


max retries exceed with url

Max retries exceeded with url: /india/scan (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object
at 0x000001E25BF708E0>: Failed to establish a new connection: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or
established connection failed because connected host has failed to respond')) BPCL

Hey @raakeshtomarnew,
Thanks for creating this issue. Can you reply with your code? What interval and exchange did you use?

Thanks for response
Now problem is solved.


Add test case for VIRTUAL_ENV=${Python_ROOT_DIR} in GH Actions

Debugging https://github.com/astral-sh/uv/issues/3765

Not going to support this for now.


Memif file socket descriptor is using on memif proxy closing

Expected Behavior
Memif file socket exists and the file descriptor is closed after memif proxy closed.
Current Behavior
Memif file socket exists and the file descriptor is opened after memif proxy closed.

Failure Information (for bugs)
listen unixpacket /var/lib/networkservicemesh/nsm-2/if1/memif.sock: bind: address already in use
Steps to Reproduce
Case 1:

go to test bench_memif_test.go
set breakpoint at last line
debug the test
when breakpoint triggered use command in console: kubectl exec -it [nsc-pod-name] bash
cd /var/lib/networkservicemesh
cd to the workspace folder
try to read/write to memif socket file

Case 2:

Inject new listening logic in memif_proxy.go after proxy stopped
Log the error if listen has failed
run in console: make k8s-vppagent-dataplane-save && make k8s-vppagent-dataplane-load-images
do steps 1..3 from Case 1
kubectl logs [dataplane-pod-name] | pbcopy
Search your log message from step2

Failure Logs
2019-04-09 12:57:00,286 DEBG 'vppagent-dataplane' stdout output:
time="2019-04-09T12:57:00Z" level=error msg="listen unixpacket /var/lib/networkservicemesh/nsm-2/if1/memif.sock: bind: address already in use"

Fix merged. Closing.


RouterMode 'history'

Codecov Report

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

@@          Coverage Diff          @@
##           master    #10   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      6    +1
  Lines          40     70   +30
  Branches        5      5
=====================================
+ Hits           40     70   +30

Impacted Files
Coverage Δ

src/functions/index.ts
100% <0%> (ø)
:arrow_up:

src/functions/times.ts
100% <0%> (ø)

Continue to review full report at Codecov.

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


Modal Modes

This is directly related to: #789
It also could be a potential solution to: #820
The main thing I did was disable the deactivation of menus if you have the modal_menu option set to true, and instead you need
to use a ReedlineEvent to force the deactivation of the menus in order to submit your message on the reedline.
This works almost in the ide_completions_with_modal.rs example (based on ide_completions, with just additional keybinds and option for modal_menus set) - it still has some visual issues, that I would iron out.
The reason why I'm making this draft PR is because there is an issue I'm not sure how to handle. While I can get this working in the examples, building nushell produces a different behaviour. With just the main branch of reedline, the examples allow you to stay in the completion menus which pressing backspace - however in nushell backspace throws you out of menu completion. Because of this nushell and the reedline examples have different behaviour when it comes to the reedline completion.
Is there a way to get the reedline working the same way in nushell?

I haven't studied all this code but I wonder if it could be because nushell uses NuMenuCompleter which may be different than what reedline uses internally.
https://github.com/nushell/nushell/blob/c63bb81c3e6af38e4b528aac7eb6d491f0132758/crates/nu-cli/src/reedline_config.rs#L521-L536


Custom Scheme Handler Support

Added custom scheme handlers + example
index.hpp are now generated for each frontend target in a seperate directory.

Fixed some word/spelling mistakes


Support request: folder contains shared content

I set root_folder to a specific folder in my Google Drive, but for some reason the folder (locally) also contains all the shared content (.shared) and all the trash (.Trash).
I managed to remove the trash with disable_trash=true, but the shared_with_me=false option gets removed from the config file and I can not find the new option to disable the shared content.
I want the local folder to just contain the content of the remote root folder and its sub-folders, nothing else.
How can that be achieved?
google-drive-ocamlfuse version: 0.7.24

No, sorry, there is no way to omit the .shared folder because otherwise if you have Shortcuts in your Drive, they would be dangling symlinks.

@astrada I understand. But maybe you could add this option anyway for mounted folders that do not have shortcuts to shared content, so the user could configure it at his own discretion?

That would be great, in my case: my local Google Drive folder suddenly increased from 20GB to 40GB, because someone has something big to share with me, where I don't need it on local disk.


Enforce event deletion constraints

Make event deletion compatible with #314

Covered by #314. Might become a ticket later but closing for now until decomposition of #314 into work packages becomes more stable.


Send Display Name In Friend Request

Michael's team needs display name for friend requests to work

This means front-end payload has to be changed since our back end would need display name as a required input

bennet's team needs every field


Use existing Python virtual environment?

Could it be possible to configure this plugin to use an existing virtualenv?
This would avoid having to use a heavy container in places where it isn't needed, and also keeps the Python environment accessible for projects that need it (like VSCode plugins)? Starkware is also closely tied to Python and its standard lib and it may prove cumbersome to have it all in a container

I don't see why it wouldn't be possible. Thanks for the suggestion! It probably won't be included in the next version, though.


How to Increment Custom Metric

ok.. so im a bit stumped here.
i have the custom metrics implemented (so i can see them show up when i have my server running):

However, even with looking with the answer provided to nizarayari, i dont see how to apply the .Inc() method to the custom metric.
Here is my code snippet:

I have tried as well looking at the other example, however the prometheus.Register(numErrors) example never ends up showing up in the gin metrics list (as the test ones outlined above are).
any pointers would be wonderful!
D

i figured it out.. the prometheus.Register call was working fine (with a call to func IncrementMe - not shown) - i was just not spinning the counter to see it at start :(


pyrealsense2 object file not detected by python script

Required Info

Camera Model
D435

Firmware Version
Will update

Operating System & Version
Ubuntumate

Kernel Version (Linux Only)
4.15.0

Platform
Raspberry Pi

SDK Version
2.0

Language
python

Segment
Robot

I successfully built pyrealsense2 from source. Following .so files were generated:
/home/icets/Desktop/librealsense-master/build/librealsense2.so > copied this to python script folder.
pybackend2.cpython-36m-aarch64-linux-gnu.so > copied this to python script folder and renamed it pyrealsense2.
Query:
pybackend2.cpython-36m-aarch64-linux-gnu.so - > Does the filename suggest that it is compatibale with python 3.6?
I am trying to run a python realsense example at librealsense-master/wrappers/python/examples which results in error:
python3.6 python-tutorial-1-depth.py
Traceback (most recent call last):
File "python-tutorial-1-depth.py", line 9, in
import pyrealsense2 as rs
ModuleNotFoundError: No module named 'pyrealsense2'
Any help would be great.

@ev-mp Your take on this issue.

@RealSense-Customer-Engineering
Hello,
Would be great to have your take on this issue.

Yes, the files you generated are for Python 3.6. The readme should have instructions on how to force Python 2 compilation. Please make sure you are indeed running Python 3 and not Python 2, which may be the default when running python from the command line

@Iramati Hello
Thanks for the input. I am using python3.6 to run the script. No idea why it is not working.

What is the python script folder location you copied those files

the issue is resolved. Lot of small mistakes from my end. The main issues was that link I created for the pyrealsense2 so was broken. It is working fine now.

The issue is resolved. Lot of small mistakes from my end. The main issues was that the link I created for the pyrealsense2 so was broken. It is working fine now.

@rijo11811 Can you please tell me how you create the link for the pyrealsense2. Because I have the same issue.

@malith1992 We need to dive into the concept of links in Linux to figure out the issue. I used a work around.
i copied my python script into the original location of pyrealsense2.so. PFB the same on my raspberrypi:
****@icets-ubuntu-mate:~/Desktop/librealsense-master/build/wrappers/python$
I had many pyrealsense2 so files here with names like "pybackend2.cpython-36m-aarch64-linux-gnu.so
" . Renamed the one which suits my system to pyrealsense2.so.


nux: init at 0.1.4

Motivation for this change
I want to add my package nux.
I made a pull request like this, but I messed up the git commit history so I made another pull request.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Also thanks @legendofmiracles and @r-burns for rewiewing and helping me contribute to nix!

@legendofmiracles @r-burns I have squashed everything together. The maintainer add should be a separate commit. I think I fixed everything. Sorry for messing up the git history. git rebase -i is much more dangerous than I thought. Thanks to the video on of the nix maintainers sent me, I understood what it git rebase -i  does.

@legendofmiracles @r-burns, anything I have to do?

Please reorder the commits so that the maintainer commit is first
also, your git author information is wrong. its "HI" currently

Thanks so much. I will fix all your changes.

@Artturin is everything ok?
I am happy to redo if I did any mistakes

Thank you all people who reviewed my package. Sorry for messing up so many things. I really appreciate your patience towards me. Thanks

you got a couple of extra commits that aren't yours

While you're at rebasing, it would also be great if you could rename the maintainers commit to: maintainers: add drzoidberg.
You can do that with the r flag for the commit and then after quitting the editor, a new one will appear with the option to rename it.

Finally @Artturin @legendofmiracles, am I ready? :laughing:

@Artturin for once and for all! :laughing:

@Artturin, will this directly go to the unstable channel, or how does this work

https://nixpk.gs/pr-tracker.html?pr=147021


Question: How to access all  consumers plugins

Summary
How to access consumers plugins?
Steps To Reproduce

Create consumer
Associate acl plugin group to consumer

curl -X POST -H "Content-Type: application/json" -H "Cache-Control: no-cache"-d '{
	"group": "PUBLIC"
}' "http://localhost:8001/consumers/493f42d0-79f7-4311-b064-7202b56b6418/acls"

Now how to I retrieve all plugins for that consumer?
curl -X GET -H "Cache-Control: no-cache" "http://localhost:8001/consumers/493f42d0-79f7-4311-b064-7202b56b6418/plugins"
This does not work.

Additional Details & Logs

Kong version 0.10.0
Operating System OSX

I tried this uri and I get back empty list:
http://localhost:8001/plugins?consumer_id=493f42d0-79f7-4311-b064-7202b56b6418
{
  "data": [],
  "total": 0
}

Associate acl plugin group to consumer

The example you provided doesn't associate the plugin to the consumer. It associates an ACL Group the consumer, so maybe that's why it's not working. ACL Groups and ACL Plugin configuration are two separate entities.
Are you trying to retrieve all the ACL groups that have been created on the system and optionally filter that request with a specific consumer_id ?

Hi @thefosk , maybe its the terminology.
I regard acl and rate-limiting for example as plugins. They are defined in the plugin gallery aswell.
https://getkong.org/plugins/
Now if i enable these two "plugins" for a consumer, the above aforementioned URI returns the rate limiting details for the consumer, but not ACL.
http://localhost:8001/plugins?consumer_id=a3625fd7-a8ed-42ae-a3af-782e3f84e768
{
consumer_id: "a3625fd7-a8ed-42ae-a3af-782e3f84e768",
api_id: "82eade7c-6e2b-4411-9532-bc15647fb091",
id: "71baa810-f029-4698-9a05-c3d3a6764777",
created_at:<PHONE_NUMBER>000,
enabled: true,
name: "rate-limiting",
config: {
limit_by: "consumer",
fault_tolerant: true,
redis_database: 0,
policy: "cluster",
hour: 10000,
redis_timeout: 2000,
redis_port: 6379
}
}

If i want acl I have to call a different endpoint:
http://localhost:8001/consumers/a3625fd7-a8ed-42ae-a3af-782e3f84e768/acls
If this is correct, can you please confirm?
If so, I will close this issue.
Thanks,
Shane.

@shavo007 you are correct. GET /plugins returns a list of plugin objects that can be filtered by consumer ID. GET /consumers/{id}/acls returns a list of ACL objects associated with a consumer.


Allow single-file analysis mode

I've been using the codeclimate linter on a fairly large codebase on a mac and have found a couple of issues around the new improved behavior.

It takes a long time to get feedback because the codeclimate is re-analyzing my entire codebase when I save a file. (which takes somewhere around 240,000 ms)
The full analysis can be very CPU intensive (at least partly because volume mounts on macs aren't very efficient), which can be problematic if I'm running on batteries.

Perhaps a better approach here would be to do a single file analysis on the saved file and then have an option / separate command to do a full analysis.

Hi @olbrich ! First of all, thank you very much for your feedback and insights!
The linter scope must be either (previously) file or (currently) project. I presume this is provided on Atom start, so it shouldn't be feasible changing it on-the-fly after the linter has been registered without an Atom restart.
As an immediate workaround, you could modify your .codeclimate.(json|yml) to drop the engines/plugins that most rely on multi-file analysis, like similar-code or identical-code checks, or even to fine-tune the exclusions (see advanced CodeClimate configuration for more details) to speed the analysis up (if possible).
If it could be done, I think the most useful, straightforward solution would be adding an indicator to the status bar with the CodeClimate icon and the current, selected scope (file or project), with a binded keymap to toggle it.
I'm a bit busy right now, but I'll take a look at this as soon as I can with a proof-of-concept to test if it is feasible. Other solutions/thoughts welcome!

@cgalvarez thanks for looking into this.
Realistically I would probably use it primarily in the single file mode and only occasionally do the full analysis.  Is there a way to import the results of the last run on Codeclimate website?  That might be more performant than running it locally in some cases.
Another useful option might be to specify which engines to run (with -e rubocop) as an argument so users can run a subset of engines without having to modify the codeclimate config file.

Is there a way to import the results of the last run on Codeclimate website?

The cli does not seem to support such feature, but I've just discovered that Code Climate has a public API. I suppose it would be feasible to fetch the last cloud analysis and cache it on every opening of new project.
I assume this would imply to track every project file and its content (with some content hash) to detect when a file has been really modified (currently saving a file without changes fires the Code Climate analysis in Atom) to leverage the cloud analysis cache, but this could lead to wrong issues due to some cloud analysis affecting several interrelated files (i.e. duplicated code) that could have been locally modified since then and thus report to wrong locations or even inexistent issues at that time.
Besides that, the package would need to consider working offline (CC cloud API would not be available) to fallback to full local analysis or it could break its functionality.
At my first sight, this approach seems to me a bit overkilling and requiring some hard work to implement that logic.
To me, the two approaches are clear and straightforward:

File: Run a single file analysis on each save for the modified file.
Project: Run the full project analysis on any project file save.

To me, the very first proof-of-concept is testing if switching package mode on-the-fly without an Atom restart is feasible.
The cache based on content hash to avoid re-triggering new analyses from non-modified files is a plus that could be done as a separate PR to improve performance.

Another useful option might be to specify which engines to run (with -e rubocop)

I didn't think about that. Certainly it seems a more comfortable way to deal with toggling engines.

I have been running into the same issues as @olbrich, we have a large codebase and the change to do project wide linting has made this unusable for me. What do you think about at least having a setting to determine which mode to run in as part of the Atom plugin?

@cgalvarez @Arcanemagus is this project abandoned now?

I've been unable to get a response from the CodeClimate people, and nobody that actually uses this has stepped up to take it over so at the moment it is "looking for a maintainer".
Last I checked CodeClimate still didn't work on Windows so testing this myself is very difficult.


No more select cached? I can't see selector/cache/cache.go

No more select cached? I can't see selector/cache/cache.go

The default selector uses the cache


Exporting large datasets - server timeouts

I'm having trouble with server timeouts due to the size of some exports & wondered if it's possible to integrate the export function with the StreamingHttpResponse?
I put this up on SO because I can't see anything in the app or in the issues that might help with this. Any idea if it's possible? I've not used a streaming response before but I gather it requires something it can iterate over.
http://stackoverflow.com/questions/28383358/streaming-a-response-with-django-import-export

sorry but I think it would not be possible to create stream of export from tablib which django-import-export uses.

Ok thanks. I might have to investigate making something of my own then :)

I do this with Django Rest Framework (with the CSV and XML plugins) and a custom class that returns a generator

@rhunwicks have you tried this approach with large datasets (at least 1M items)?

No, the largest I have done is about 300,000 items, but the records are very large and the serialization is computationally intensive, so the process takes a long time to run - many minutes - and the downloaded data file is also large 425MB.

@rhunwicks Do you have any sample code that you could share about the custom class that you described?

i think this issue didn't fix still and who can i help me with that?

I managed to hack it into my resource class.
    def export_as_generator(self, queryset=None, *args, **kwargs):
        self.before_export(queryset, *args, **kwargs)
        if queryset is None:
            queryset = self.get_queryset()
        headers = self.get_export_headers()
        data = tablib.Dataset(headers=headers)
        # Return headers
        yield data.csv

        if isinstance(queryset, QuerySet):
            # Iterate without the queryset cache, to avoid wasting memory when
            # exporting large datasets.
            iterable = queryset.iterator()
        else:
            iterable = queryset
        for obj in iterable:
            # Return subset of the data (one row)
            # This is a simple implementation to fix the tablib library which is missing returning the data as
            # generator
            data = tablib.Dataset()
            data.append(self.export_resource(obj))
            yield data.csv

        self.after_export(queryset, data, *args, **kwargs)

        yield

Then in the view, I call this method like that
dataset = self.resource_class().export_as_generator()
response = StreamingHttpResponse(dataset, content_type="csv")

It needs some enhancements (like appending page of the queryset instead of one row). I can create a PR.

content_type="csv"

Thanks for this solution! Did you ever add the enhancements you mentioned?

I managed to hack it into my resource class.
    def export_as_generator(self, queryset=None, *args, **kwargs):
        self.before_export(queryset, *args, **kwargs)
        if queryset is None:
            queryset = self.get_queryset()
        headers = self.get_export_headers()
        data = tablib.Dataset(headers=headers)
        # Return headers
        yield data.csv

        if isinstance(queryset, QuerySet):
            # Iterate without the queryset cache, to avoid wasting memory when
            # exporting large datasets.
            iterable = queryset.iterator()
        else:
            iterable = queryset
        for obj in iterable:
            # Return subset of the data (one row)
            # This is a simple implementation to fix the tablib library which is missing returning the data as
            # generator
            data = tablib.Dataset()
            data.append(self.export_resource(obj))
            yield data.csv

        self.after_export(queryset, data, *args, **kwargs)

        yield

Then in the view, I call this method like that
dataset = self.resource_class().export_as_generator()
response = StreamingHttpResponse(dataset, content_type="csv")

It needs some enhancements (like appending page of the queryset instead of one row). I can create a PR.

Thanks for this solution! Did you ever add the enhancements you mentioned?

Hey, stumbled upon this post and wanted to expand on it a little better as the solution wasnt fully functioning in terms of only returning the csv data, and also, perhaps I misunderstand their purpose, but I also believe there are 3 yield statements, where there could be one. This causes the code to output bad JSON data.
Please see me below proposed update to the solution above:
def export(self, queryset=None, *args, **kwargs):
    self.before_export(queryset, *args, **kwargs)

    # get the file extension, so that we can getattr the dataset on the yield statement
    # we do this as otherwise we will only ever export CSV files
    file_extension = kwargs.get('file_format').get_extension()
    if queryset is None:
        queryset = self.get_queryset()
    headers = self.get_export_headers()
    data = tablib.Dataset(headers=headers)
    # remove unnecessary yielding of the header data
    # yield getattr(data, file_extension)

    if isinstance(queryset, QuerySet):
        # Iterate without the queryset cache, to avoid wasting memory when
        # exporting large datasets.
        iterable = queryset.iterator()
    else:
        iterable = queryset

    for obj in iterable:
        # Return subset of the data (one row)
        # This is a simple implementation to fix the tablib library which is missing returning the data as
        # generator
        data.append(self.export_resource(obj))
        if getattr(data, file_extension):
            yield getattr(data, file_extension)

    self.after_export(queryset, data, *args, **kwargs)

    # removed a dangling yield statement
    # yield

This code is overriden from the export function of ModelResource, there is also another thing required, as alluded to in the solution post. That being to change the way we return the response, instead making it a Streaming Response instead.
class UserAdmin(ExportMixin, auth.admin.UserAdmin):
    # note below, we override the template with a template placed in the app template directory
    change_list_template = 'user_export_streamed.html'
    resource_class = UserResource
    list_display = auth.admin.UserAdmin.list_display + ('date_joined',)
    inlines = [
        UserProfileInline,
    ]

    def approve(self, request, queryset):
        queryset.update(is_active=True)
        self.message_user(message='Successfully approved {} user(s)'.format(queryset.count()), request=request)

    approve.short_description = "Approve selected users"

    def __init__(self, *args, **kwargs):

        if getattr(settings, 'ACCOUNT_ACTIVATION', 'self') == 'self':
            self.actions += ['approve']

        super().__init__(*args, **kwargs)

    # note below, we override the get_urls() function to add the export_streamed/ link and specify the streaming function
    # as its callback
    def get_urls(self):
        urls = super().get_urls()
        my_urls = [
            path('export_streamed/', self.export_streamed),
        ]
        return my_urls + urls

    # custom function which is written as specified by the ExportActionMixin and combined with
    # django documentation about how to add custom buttons onto the admin pages
    def export_streamed(self, request, *args, **kwargs):
        if not self.has_export_permission(request):
            raise PermissionDenied

        formats = self.get_export_formats()
        form = ExportForm(formats, request.POST or None)
        if form.is_valid():
            file_format = formats[
                int(form.cleaned_data['file_format'])
            ]()

            queryset = self.get_export_queryset(request)
            dataset = self.resource_class().export(file_format=file_format)

            # notice the small detail changing it to a streaming response here
            response = StreamingHttpResponse(dataset, content_type=file_format)
            response['Content-Disposition'] = 'attachment; filename="%s"' % (
                self.get_export_filename(request, queryset, file_format),
            )

            post_export.send(sender=None, model=self.model)
            return response

        context = self.get_export_context_data()

        context.update(self.admin_site.each_context(request))

        context['title'] = _("Export")
        context['form'] = form
        context['opts'] = self.model._meta
        request.current_app = self.admin_site.name
        return TemplateResponse(request, [self.export_template_name],
                                context)

Hey, stumbled upon this post and wanted to expand on it a little better as the solution wasnt fully functioning in terms of only returning the csv data, and also, perhaps I misunderstand their purpose, but I also believe there are 3 yield statements, where there could be one. This causes the code to output bad JSON data.
Please see me below proposed update to the solution above:
def export(self, queryset=None, *args, **kwargs):
    self.before_export(queryset, *args, **kwargs)

    # get the file extension, so that we can getattr the dataset on the yield statement
    # we do this as otherwise we will only ever export CSV files
    file_extension = kwargs.get('file_format').get_extension()
    if queryset is None:
        queryset = self.get_queryset()
    headers = self.get_export_headers()
    data = tablib.Dataset(headers=headers)
    # remove unnecessary yielding of the header data
    # yield getattr(data, file_extension)

    if isinstance(queryset, QuerySet):
        # Iterate without the queryset cache, to avoid wasting memory when
        # exporting large datasets.
        iterable = queryset.iterator()
    else:
        iterable = queryset

    for obj in iterable:
        # Return subset of the data (one row)
        # This is a simple implementation to fix the tablib library which is missing returning the data as
        # generator
        data.append(self.export_resource(obj))
        if getattr(data, file_extension):
            yield getattr(data, file_extension)

    self.after_export(queryset, data, *args, **kwargs)

    # removed a dangling yield statement
    # yield

This code is overriden from the export function of ModelResource, there is also another thing required, as alluded to in the solution post. That being to change the way we return the response, instead making it a Streaming Response instead.
class UserAdmin(ExportMixin, auth.admin.UserAdmin):
    # note below, we override the template with a template placed in the app template directory
    change_list_template = 'user_export_streamed.html'
    resource_class = UserResource
    list_display = auth.admin.UserAdmin.list_display + ('date_joined',)
    inlines = [
        UserProfileInline,
    ]

    def approve(self, request, queryset):
        queryset.update(is_active=True)
        self.message_user(message='Successfully approved {} user(s)'.format(queryset.count()), request=request)

    approve.short_description = "Approve selected users"

    def __init__(self, *args, **kwargs):

        if getattr(settings, 'ACCOUNT_ACTIVATION', 'self') == 'self':
            self.actions += ['approve']

        super().__init__(*args, **kwargs)

    # note below, we override the get_urls() function to add the export_streamed/ link and specify the streaming function
    # as its callback
    def get_urls(self):
        urls = super().get_urls()
        my_urls = [
            path('export_streamed/', self.export_streamed),
        ]
        return my_urls + urls

    # custom function which is written as specified by the ExportActionMixin and combined with
    # django documentation about how to add custom buttons onto the admin pages
    def export_streamed(self, request, *args, **kwargs):
        if not self.has_export_permission(request):
            raise PermissionDenied

        formats = self.get_export_formats()
        form = ExportForm(formats, request.POST or None)
        if form.is_valid():
            file_format = formats[
                int(form.cleaned_data['file_format'])
            ]()

            queryset = self.get_export_queryset(request)
            dataset = self.resource_class().export(file_format=file_format)

            # notice the small detail changing it to a streaming response here
            response = StreamingHttpResponse(dataset, content_type=file_format)
            response['Content-Disposition'] = 'attachment; filename="%s"' % (
                self.get_export_filename(request, queryset, file_format),
            )

            post_export.send(sender=None, model=self.model)
            return response

        context = self.get_export_context_data()

        context.update(self.admin_site.each_context(request))

        context['title'] = _("Export")
        context['form'] = form
        context['opts'] = self.model._meta
        request.current_app = self.admin_site.name
        return TemplateResponse(request, [self.export_template_name],
                                context)

@EmadMokhtar this works fine with csv, but it doesn't work with excel (xlsx). When I open the file, only the last (data) row is present; there's not even the header row. Seems like data gets overriden instead of appended. I'm using your exact code with the only difference of yield data.csv that I changed to yield data.xlsx
In my view I have:
dataset = resource.export_as_generator()
response = StreamingHttpResponse(
    dataset,
    content_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
)

return response

Any thoughts?


fake-useragent.herokuapp.com unreliable uptime

It seems the cache server is unreliably available, as my programs are failing. They are trying to load "https://fake-useragent.herokuapp.com/browsers/0.1.8". Sometimes when I visit this page in a browser it is available (loading "browsers": {"chrome":.....), most of the time I am getting a connection closed error:

Error occurred during loading data. Trying to use cache server https://fake-useragent.herokuapp.com/browsers/0.1.8
Traceback (most recent call last):
  File "C:\Python36\lib\site-packages\fake_useragent\utils.py", line 67, in get
    context=context,
  File "C:\Python36\lib\urllib\request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "C:\Python36\lib\urllib\request.py", line 526, in open
    response = self._open(req, data)
  File "C:\Python36\lib\urllib\request.py", line 544, in _open
    '_open', req)
  File "C:\Python36\lib\urllib\request.py", line 504, in _call_chain
    result = func(*args)
  File "C:\Python36\lib\urllib\request.py", line 1346, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "C:\Python36\lib\urllib\request.py", line 1321, in do_open
    r = h.getresponse()
  File "C:\Python36\lib\http\client.py", line 1331, in getresponse
    response.begin()
  File "C:\Python36\lib\http\client.py", line 297, in begin
    version, status, reason = self._read_status()
  File "C:\Python36\lib\http\client.py", line 266, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

Hmm, sounds like a high-load problem ;) I am considering to move backup files just to s3 + cloudfront, I'll do minor quick-fix release on next Monday(November 20)

Thanks

Release 0.1.9 moved to s3 + cloudfront http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.9.json


Add support for JSON bundle server config

This duplicates the Ozaria server config process have, allowing us to initialize config from a JSON bundle in an environment variable.  This allows us to pull secrets from a secret store (AWS Secret Manager) and not store them in our repos.  This is required to run CodeCombat on Fargate.

Good question!  It's usually best to handle these types of config errors with an explicit failure and depend on your deployment / orchestration platform to make sure that the service stays up (ie don't spin down old ones until new ones are up).  This way there are no hidden functionality that occurs from bad config.


Command.UsageText is not used in the default CommandHelpTemplate

Given that Command.UsageText exists, I was expecting the default template to display it like AppHelpTemplate does for App.UsageText.
Are users expected to use a custom CommandHelpTemplate to display it?

Closing as dupe of #592.


Go-config causing annoying suggestion box on comma

Every time I type a comma in my go files, no matter where I am in the file or what I'm typing it after it gives this annoying suggestion window: http://imgur.com/7AeK7c0
I don't recall it always doing this, but regardless it's very frustrating. Is there any way to disable this?
Other packages I have installed (if there's some sort of weird conflict):
autocomplete-go
go-config
go-get
go-plus
environment
git-plus
jsformat
linter
If I disable go-config the problem goes away.
It would be okay if it was doing it in places that made sense, but it's unfortunately that's not the case.
Thanks :)

This is not a go-config issue; its autocomplete-go, or go-plus.

Ah, you're right, it's an autocomplete-go problem. I'll close this and create an issue over there. Thanks.


Remove org.apache.catalina.ssi from tomcat-embed-core.jar.tmp.bnd

This package no longer exits in tomcat-embed-core.jar. It is in the module-info.class of the current 10.1.18 and earlier 10.x releases.
Running jlink or jpackage with a Module Path that contains tomcat-embed-core-10.1.18.jar gives the following error:

jlink failed with: Error: Packages that are exported or open in org.apache.tomcat.embed.core are not present: [org.apache.catalina.ssi]

Fixed manually in main for 11.0.x (with change log entry) and then back-ported (cherry-picked) to 10.1.x and 9.0.x.

Thanks @markt-asf!


[admin] Merge to live!

Docs Build status updates of commit 77bfa48:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

docs/404.md
:white_check_mark:Succeeded

docs/develop/excel-async-model.md
:white_check_mark:Succeeded

docs/develop/power-automate-integration.md
:white_check_mark:Succeeded

docs/develop/scripting-fundamentals.md
:white_check_mark:Succeeded

docs/includes/power-automate-tutorial-prerequisites.md
:white_check_mark:Succeeded

docs/includes/preview-note.md
:white_check_mark:Succeeded

docs/includes/tutorial-prerequisites.md
:white_check_mark:Succeeded

docs/overview/code-editor-environment.md
:white_check_mark:Succeeded

docs/overview/excel.md
:white_check_mark:Succeeded

docs/resources/scenarios/analyze-web-downloads.md
:white_check_mark:Succeeded

docs/resources/scenarios/sample-scenario-overview.md
:white_check_mark:Succeeded

docs/toc.yml
:white_check_mark:Succeeded

docs/tutorials/excel-power-automate-manual.md
:white_check_mark:Succeeded

docs/tutorials/excel-power-automate-trigger.md
:white_check_mark:Succeeded

docs/tutorials/excel-read-tutorial.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Adding own template in alpha-3 failing  'currentMode is not defined'

When i try to add a template in the UI an press the save button i get a 'currentMode is not defined' in the console

That bug was in alpha 2 and fixed with alpha 3, I can also no longer replicate it on an alpha 3 setup, so make sure you're actually not still on alpha 2 (and make sure you're not dealing with browser cache, just to be safe)

ok ... no idea why, but i guess the problem was the browser cache ...


Moved formerly unstable to Std library

We had Arithmetic, Arithmetic Utils (internal), Table Lookup and State Preparation in the unstable library. Now they are moved to the Std library.
Taking Arithmetic as an example, we now place Q# code in the Std.Arithmetic and re-export it in Microsoft.Quantum.Unstable.Arithmetic for compatibility. Separate unstable library is removed.
We probably should look at using AND gate in subsequent PR.

When do you see us being ready to drop the unstable reexports of these libraries?


[Issue]: Function calling is not working properly for gemini model.

Describe the issue
I have used litellm to get open ai compatable api for google's gemini pro model and used it in base_url.So when i tried function calling it is returning a json object but it is not the used format.I have tried different prompts but it still's not working.
Steps to reproduce
1.Step 1:
import yfinance as yf
import autogen
Configuration for OpenAI API
config_list = [
{
'model': 'gpt-3.5-turbo',
'api_key': 'anything',
'base_url': 'https://6ad3-35-245-36-6.ngrok-free.app',
}
]
Autogen configuration
llm_config = {
"functions": [
{
"name": "get_stock_price",
"description": "Get the current stock price for a given stock symbol.",
"parameters": {
"type": "object",
"properties": {
"symbol": {
"type": "string",
"description": "Stock symbol to get the price for.",
}
},
"required": ["symbol"],
},
},
],
"config_list": config_list,
"timeout": 120,
}
Autogen agent initialization
chatbot = autogen.AssistantAgent(
name="chatbot",
system_message="For coding tasks, only use the functions you have been provided with. Reply TERMINATE when the task is done.",
llm_config=llm_config,
)
Function to get stock price
def get_stock_price(symbol):
try:
# Use yfinance to get stock price
stock_data = yf.Ticker(symbol)
current_price = stock_data.history(period="1d")['Close'].iloc[-1]
return f"The current price of {symbol} is ${current_price:.2f}"
except Exception as e:
return f"Error fetching stock price: {str(e)}"
Autogen user proxy initialization
user_proxy = autogen.UserProxyAgent(
name="user_proxy",
is_termination_msg=lambda x: x.get("content", "") and x.get("content", "").rstrip().endswith("TERMINATE"),
human_input_mode="NEVER",
max_consecutive_auto_reply=10,
code_execution_config={"work_dir": "coding"},
)
Register the get_stock_price function
user_proxy.register_function(
function_map={
"get_stock_price": get_stock_price,
}
)
Start the conversation
user_proxy.initiate_chat(
chatbot,
message="Get the current stock price for symbol apple.",
)
Screenshots and logs

Additional Information
No response

We are migrating code from function calls to tool calls. Do you have an option to use tool calls with Gemini?

No It is not working.Unlike function calling which is partially working It is giving altleast json output.But when i use tool calls with litellm its throwing erros.
import autogen
from typing import Literal
from typing_extensions import Annotated
config_list = [
{
'model': 'gpt-3.5-turbo',
'api_key': 'anything',
'base_url': 'http://abce-35-231-22-211.ngrok-free.app',
}
]
llm_config = {
"config_list": config_list,
"timeout": 120,
}
currency_bot = autogen.AssistantAgent(
name="currency_bot",
system_message="For currency exchange tasks, only use the functions you have been provided with. Reply TERMINATE "
"when the task is done.",
llm_config=llm_config,
)
user_proxy = autogen.UserProxyAgent(
name="user_proxy",
is_termination_msg=lambda x: x.get("content", "") and x.get("content", "").rstrip().endswith("TERMINATE"),
human_input_mode="NEVER",
max_consecutive_auto_reply=10,
)
CurrencySymbol = Literal["USD", "EUR"]
def exchange_rate(base_currency: CurrencySymbol, quote_currency: CurrencySymbol) -> float:
if base_currency == quote_currency:
return 1.0
elif base_currency == "USD" and quote_currency == "EUR":
return 1 / 1.09
elif base_currency == "EUR" and quote_currency == "USD":
return 1.1
else:
raise ValueError(f"Unknown currencies {base_currency}, {quote_currency}")
@user_proxy.register_for_execution()
@currency_bot.register_for_llm(description="Currency exchange calculator.")
def currency_calculator(
base_amount: Annotated[float, "Amount of currency in base_currency"],
base_currency: Annotated[CurrencySymbol, "Base currency"] = "USD",
quote_currency: Annotated[CurrencySymbol, "Quote currency"] = "EUR",
) -> str:
quote_amount = exchange_rate(base_currency, quote_currency) * base_amount
return f"{quote_amount} {quote_currency}"
start the conversation
user_proxy.initiate_chat(
currency_bot,
message="How much is 123.45 USD in EUR?",
)
Error:
How much is 123.45 USD in EUR?

Traceback (most recent call last):
File "c:\Users\Asus\Documents\autogen\function_test.py", line 60, in
user_proxy.initiate_chat(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\agentchat\conversable_agent.py", line 621, in initiate_chat
self.send(self.generate_init_message(**context), recipient, silent=silent)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\agentchat\conversable_agent.py", line 398, in send
recipient.receive(message, self, request_reply, silent)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\agentchat\conversable_agent.py", line 551, in receive
reply = self.generate_reply(messages=self.chat_messages[sender], sender=sender)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\agentchat\conversable_agent.py", line 1191, in generate_reply
final, reply = reply_func(self, messages=messages, sender=sender, config=reply_func_tuple["config"])
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\agentchat\conversable_agent.py", line 708, in generate_oai_reply
response = client.create(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\oai\client.py", line 261, in create
response = self._completions_create(client, params)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\autogen\oai\client.py", line 359, in _completions_create
response = completions.create(**params)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_utils_utils.py", line 272, in wrapper
return func(*args, **kwargs)
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai\resources\chat\completions.py", line 645, in create
return self._post(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 1088, in post
return cast(ResponseT, self.request(cast_to, opts, stream=stream, stream_cls=stream_cls))
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 853, in request
return self._request(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 916, in _request
return self._retry_request(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 958, in _retry_request
return self._request(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 916, in _request
return self._retry_request(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 958, in _retry_request
return self._request(
File "C:\Users\Asus\anaconda3\envs\pyautogen\lib\site-packages\openai_base_client.py", line 930, in _request
raise self._make_status_error_from_response(err.response) from None
openai.InternalServerError: Error code: 500 - {'detail': ''functions'\n\nTraceback (most recent call last):\n  File "/usr/local/lib/python3.10/dist-packages/litellm/main.py", line 556, in completion\n    optional_params = get_optional_params(\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 3198, in get_optional_params\n    "tools", non_default_params.pop("functions")\nKeyError: 'functions'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File "/usr/local/lib/python3.10/dist-packages/litellm/main.py", line 215, in acompletion\n    response = await loop.run_in_executor(None, func_with_context)\n  File "/usr/lib/python3.10/concurrent/futures/thread.py", line 58, in run\n    result = self.fn(*self.args, **self.kwargs)\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 2130, in wrapper\n    raise e\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 2037, in wrapper\n    result = original_function(*args, **kwargs)\n  File "/usr/local/lib/python3.10/dist-packages/litellm/main.py", line 1746, in completion\n    raise exception_type(\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 6628, in exception_type\n    raise e\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 6603, in exception_type\n    raise APIConnectionError(\nlitellm.exceptions.APIConnectionError: 'functions'\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File "/usr/local/lib/python3.10/dist-packages/litellm/proxy/proxy_server.py", line 1464, in chat_completion\n    response = await litellm.acompletion(**data)\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 2366, in wrapper_async\n    raise e\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 2258, in wrapper_async\n    result = await original_function(*args, **kwargs)\n  File "/usr/local/lib/python3.10/dist-packages/litellm/main.py", line 227, in acompletion\n    raise exception_type(\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 6628, in exception_type\n    raise e\n  File "/usr/local/lib/python3.10/dist-packages/litellm/utils.py", line 6596, in exception_type\n    raise APIConnectionError(\nlitellm.exceptions.APIConnectionError: 'functions'\n'}

It looks like we broke it with all of the latest changes :/ I opened an issue for it and will fix it soon https://github.com/microsoft/autogen/issues/1206

Is function calling working now? It seems to fail with gemini-1.5-flash-latest for me.
Here are Gemini's docs: https://ai.google.dev/gemini-api/docs/function-calling

closing as resolved.


zh-translation: .\docs\root\configuration\listeners\network_filters\s…

…ni_dynamic_forward_proxy_filter.rst

For an explanation of how to fill out the fields, please see the relevant section
in PULL_REQUESTS.md
Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes: .\docs\root\configuration\listeners\network_filters\sni_dynamic_forward_proxy_filter.rst
Release Notes:
[Optional Runtime guard:]
[Optional Fixes #Issue] #295
[Optional Deprecated:]

/LGTM

LGTM


Demo for requiring auth for all routes

The fix was small and appears to work so we simply documented it in the related issue: https://github.com/shaunluttin/aurelia-open-id-connect/issues/45


Returned Organization resource is not a valid FHIR resource

Expected Behavior
Response from GET https://directory.spineservices.nhs.uk/STU3/Organization should pass FHIR validation checks.
Current Behavior
The Organization resources returned in the Bundle throw errors when validated using the HL7 validation tools.
Errors are:
  Error @ Organization.meta.profile (line 1, col180) : This property must be an Array, not a a primitive property
  Error @ Organization.identifier (line 1, col2804) : This property must be an Array, not an Object
  Error @ Organization.type (line 1, col2858) : This property must be an Array, not an Object
  Error @ Organization.type.coding (line 1, col2939) : This property must be an Array, not an Object
  Error @ Organization.address (line 1, col3218) : This property must be an Array, not an Object

Possible Solution
Change Organization values: Organization.meta.profile, Organization.identifier, Organization.type, Organization.type.coding, and Organization.address to Arrays, rather than Objects.

This is a known problem (to some https://medium.com/@rkavanagh/eating-your-own-dog-food-f51fdd41cc18).
Was reported at the time but a decision was made not to fix the issue. The rationale for having a national service that was not compliant with FHIR escapes me now as it did then.

@clarotech I see! I appreciate your candour, looks like I'll just work around these issues, then. Thanks for responding so quickly.


Can't Add Subreddit Feed

I'd noticed that the one subreddit feed that I have in NNW wasn't updating. I deleted it and tried to re-add but I'm getting an error (note that I tried using other subreddits but got the same error). The Reddit extension is enabled, and I'm using an iCloud account.

What happens if you remove the Reddit extension and add it again?

That worked, thanks. I should mention that when I first tried to authorize my Reddit account, clicking the "Continue" button did nothing - the dialog disappeared but no authentication took place. Logging out and back into my Mac solved the issue.

@vincode-io Is this the same issue as Feedly losing its authentication?

Not likely. They use two different ways of doing OAuth.

got this one today too still able to add as a web feed

Could it auto add .rss if we don’t have the Reddit extension enabled?


Kata voting widget only appears when user has chosen a language version that has been solved with

Previously if someone has solved a kata in at least one language version, regardless of which language version is chosen the kata voting widget will appear in solution and discourse pages.
Since the UI change a few hours ago this is not the case. For example, I have solved Multiply (the entry kata, which everyone should have solved) in C#, so I can see the kata voting widget if I choose C# as the language version:

But I haven't solve the kata in Rust, so I don't get the voting widget in discourse pages if I choose Rust as the language version:

Since kata voting is done towards the whole kata and not any specific language versions of it, it shouldn't be locked behind solved language versions.

I actually broke this 3 months ago. Just deployed the fix.


Move CONTRIBUTING file to .github subfolder

To declutter the root on the GitHub view. The drawback is that it's not as visible for people who expect it to be there – but since there is some info about contributing in the README itself, it feels appropriate.

Hi @thibaudcolas,
I don't really understand the motivation for this change - if we're deciding that decluttering the root is a desirable goal (and I'm not convinced that it is...), surely the aim is to eliminate the machine-readable gunk and make human-readable files like CONTRIBUTING more visible, not the other way round...?

Hey hey,
sorry, I didn't realise that there wasn't a consensus around that goal. Tom mentioned it https://github.com/wagtail/wagtail/pull/3021#issuecomment-266998843, which is why I thought this PR would be interesting. Personally I think it's a desirable goal, but not so important in the grand scheme of things – if there is no clear consensus, it's not worth debating IMHO.

Now for the reasoning – in my opinion the point of CONTRIBUTING.md is the integration with GitHub, nothing else. The project has contribution info that is more appropriate for humans in its README, and its purpose-built documentation. I agree other machine-readable files should be moved as much as possible, it just happens to be very straightforward for this one file.

I think there's still value in CONTRIBUTING.md as a document in its own right, not just for the Github integration... let's keep it in its current place.


Remove outdated html-attribute markdown

There is an outdated html-attribute markdown file that serves as the old reference for configuring this plugin. That markdown file should be removed in favor of the new full API documentation.

[x] remove references to html-attribute markdown in project README
[x] remove html-attribute markdown file

There is also an incorrect link to the "responsive" example in the readme

[x] Replace "responsive" link with https://nateplusplus.github.io/pushin/examples/responsive/
[x] Remove extra HTML page?

This is fixed in v5.1.1 patch release