Add example & references in docs to steer people directly to MultiGzDecoder

I think it would help users to have documentation that clearly points people to MultiGzDecoder for decompressing gzipped data. I see two specific places for this:

On the front page, in addition to the encoding example, give a decoding example.
In the GzDecoder docs, make a clear warning that GzDecoder only decodes a single stream, and if users want to reliably decode arbitrary gzipped files, they should look at MultiGzDecoder.

'I have some gzipped data, please decode' seems like a very common use case for flate2 (it was certainly my use case). Right now, it isn't obvious at a quick intro level how to do that.

Sounds plausible to me!

I've been burned by using GzDecoder, not knowing there were multiple members in the file. Even if you know an input is a single member, is there a compelling reason to use GzDecoder over MultiGzDecoder? (Presumably the latter will yield the same results, but is there a perf hit for it?)

There are some obscure cases, but more around when you know that a file is multiple streams. The Alpine .apk format uses multiple .gz streams in a design that is simultaneously clever and mildly horrifying. They tar & compress the package content; then tar & compress metadata, including a checksum of the compressed content stream, as a “tar fragment” (sequence of tar entries without the end-of-tarball indicator) and prepend it to the content; and finally, they sign all of that, pack the signature into a tar entry, gzip it, and prepend it to the whole thing. So you can tar xvzf the entire file and get the content, metadata, and signature, but if you want to work with the file directly and verify its signature, you need to know when the first gzip stream stops.
I don't think doing surgery on Alpine packages is the common use case for flate2.


How can I set .clang-format globally?

I'm struggling with this problem for hours.
As far as I know, clangd doesn't have -style option unlike clang-format and there's  no way to set my custom format in my coc.nvim + coc-clang environment (I found -fallback-style option but it is not customizable because it is a kind of presets).
So, is there any way to set a global formating option  like vim-clang-format?

it is not customizable because it is a kind of presets

I'm not sure about this: -fallback-style accepts the same options as clang-format -style which is used by vim-clang-format. It can be a string like LLVM for a preset, or a YAML document within {} - this is the same format used in .clang-format files and can customize any settings.
e.g. `clangd -fallback-style="{BasedOnStyle: LLVM, IndentWidth: 4}'"
I think someone is working on making it possible to include a separate file in BasedOnStyle too, bu that hasn't landed yet.
That said, using a .clang-format file is the recommended solution and we're not likely to add more options to avoid doing that. The reason is that it's important that the style for a given project is consistent even if there are multiple contributors or if one contributor works on several projects with different styles.
If this is just for personal projects that you don't share with anyone else, you can put .clang-format in your home directory etc.

I tried like clangd -fallback-style={...} but it didn't work.
As you said, duplicating.clang-format per project is the easiest solution.
But, in my case, I use a single convention that is not yet consistent so duplicating .clang-format wasn't an optimal solution :(
That's why I wanted a "global" option.
I thought clangd doesn't have arguments for this purpose (I tried clangd --help and as far as I know there was nothing like clang-format -style=...) but some plugins --- vim-clang-format and so on --- supports it so I was wondering about overriding some features in coc-clangd.
Plus, the reason why I did not use vim-clang-format is I'm a coc.nvim user and it provides an interface :Format for formatting codes, so I just wanted to keep the interface.

-fallback-style accepts the same options as clang-format -style

That seems not to be the case, or it's bugged, or I'm setting it incorrectly in coc-settings.json.
I tried "clangd.arguments": [ "-fallback-style='{BasedOnStyle: LLVM, IndentWidth: 8}'" ], but clangd reports: I[04:00:15.843] getStyle() failed for file /home/ave/clang-format-repro/main.cc: Invalid fallback style "'{BasedOnStyle: LLVM, IndentWidth: 8}'. Fallback is LLVM style. (also notice an unclosed "). :Format formats as default LLVM. If .clang-format is present with contents {BasedOnStyle: LLVM, IndentWidth: 8}, it still formats as default LLVM (definitely a bug?). If I use "clangd.arguments": [ "-fallback-style=WebKit" ] it formats correctly as WebKit. If .clang-format is present with contents {BasedOnStyle: LLVM, IndentWidth: 8}, it formats as LLVM with 8 spaces. This is all reproducible on:
vim version: NVIM v0.4.4
node version: v14.12.0
coc.nvim version: 0.0.79-6cb5c6cd2d
term: xterm-kitty
platform: linux
I[04:09:38.270] clangd version 10.0.1

I'm experiencing the same issue as @avemilia

I'm experiencing the same issue as @avemilia

Fixed this issue by using a .clang-format file instead. It works but not optimal

Fixed this issue by using a .clang-format file instead. It works but not optimal

There are two issues here, mostly inherited from clang-format itself:

FallbackStyle cannot be a custom style definition, it has to be a predefined style.
If FallbackStyle doesn't correspond to a predefined style, style detection fails, even in the presence of a .clang-format file.

The first issue limits users ability to define a custom "global" fallback for format style to clangd. We can extend FallbackStyle handling in clang-format to accept custom ones. That's not the case currently probably because they don't want to parse the fallback configuration string at every call(but they are happy to read it from file and parse it again ?!?). But we can overcome this by parsing it once on the caller side and taking a pre-built FallbackStyle, rather than a string one. In addition to that, we might want to have a section in Config for FallbackStyle. WDYT @sam-mccall ?
For the second issue, it seems like a straight forward fix, but it implies a change in behaviour. Maybe they've a good reason for bailing out early whenever the FallbackStyle is malformed. I'll put together a patch and try to find some clang-format reviewers to see if they got any concerns.
As for a workaround until we take some action, similar to what @ErikReider did, you can put a .clang-format file at a top level like $HOME/.clang-format (assuming source files you edit are living under $HOME/...). Then clangd will read style from that file, if it fails to find any config closer to file being edited instead.

There are two issues here, mostly inherited from clang-format itself:

FallbackStyle cannot be a custom style definition, it has to be a predefined style.
If FallbackStyle doesn't correspond to a predefined style, style detection fails, even in the presence of a .clang-format file.

The first issue limits users ability to define a custom "global" fallback for format style to clangd. We can extend FallbackStyle handling in clang-format to accept custom ones. That's not the case currently probably because they don't want to parse the fallback configuration string at every call(but they are happy to read it from file and parse it again ?!?). But we can overcome this by parsing it once on the caller side and taking a pre-built FallbackStyle, rather than a string one. In addition to that, we might want to have a section in Config for FallbackStyle. WDYT @sam-mccall ?
For the second issue, it seems like a straight forward fix, but it implies a change in behaviour. Maybe they've a good reason for bailing out early whenever the FallbackStyle is malformed. I'll put together a patch and try to find some clang-format reviewers to see if they got any concerns.
As for a workaround until we take some action, similar to what @ErikReider did, you can put a .clang-format file at a top level like $HOME/.clang-format (assuming source files you edit are living under $HOME/...). Then clangd will read style from that file, if it fails to find any config closer to file being edited instead.

Sent out https://reviews.llvm.org/D95538 for the latter issue.

Sent out https://reviews.llvm.org/D95538 for the latter issue.

FallbackStyle cannot be a custom style definition, it has to be a predefined style.

Right - I was mistaken about the -fallback-style behavior, sorry.
This could be fixed in clang-format, it seems a little cumbersome to use but not terrible.
There was also a proposal to let -style be a file, which would interact nicely here. Seems to have stalled though.

If FallbackStyle doesn't correspond to a predefined style, style detection fails, even in the presence of a .clang-format file.

This doesn't seem like a problem. If FallbackStyle is effectively an enum, then what's the purpose of allowing an invalid value so long as you never use the feature? No other flags work that way.

FallbackStyle cannot be a custom style definition, it has to be a predefined style.

Right - I was mistaken about the -fallback-style behavior, sorry.
This could be fixed in clang-format, it seems a little cumbersome to use but not terrible.
There was also a proposal to let -style be a file, which would interact nicely here. Seems to have stalled though.

If FallbackStyle doesn't correspond to a predefined style, style detection fails, even in the presence of a .clang-format file.

This doesn't seem like a problem. If FallbackStyle is effectively an enum, then what's the purpose of allowing an invalid value so long as you never use the feature? No other flags work that way.

This doesn't seem like a problem. If FallbackStyle is effectively an enum, then what's the purpose of allowing an invalid value so long as you never use the feature? No other flags work that way.

Fair point if you treat this as a "flag", and if we are going down that path, I would suggest literally checking for that and shutting down if need be at the startup (same with other flags) rather than just logging some errors.
I was treating this more like a function parameter, hence the different interpretation.

This doesn't seem like a problem. If FallbackStyle is effectively an enum, then what's the purpose of allowing an invalid value so long as you never use the feature? No other flags work that way.

Fair point if you treat this as a "flag", and if we are going down that path, I would suggest literally checking for that and shutting down if need be at the startup (same with other flags) rather than just logging some errors.
I was treating this more like a function parameter, hence the different interpretation.

What I did to work this around is to copy my .clang-format fallback at the root of my system. Whether I edit a file in /tmp, /etc, /whatever, it will always end up using /.clang-format. This is dirty af but it works...
If you have a .clang-format further down the tree it will be used instead.

Is this fixed? I switched to this extension from https://github.com/microsoft/vscode-cpptools this one, it provides an option C_Cpp.clang_format_fallbackStyle
"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Attach, AllowShortIfStatementsOnASingleLine: true, IndentCaseLabels: false, ColumnLimit: 0, AccessModifierOffset: -4, AllowShortLoopsOnASingleLine: true}",

Can we have this option for clangd extension.

clangd's issue.


Training Operator crashes when submitting PyTorchJob with elasticPolicy but without worker template defined

What happened?
When submitting a PyTorchJob with an elasticPolicy set but only a master template (no worker template defined), the Training Operator crashes with a nil pointer exception that seems to be coming from this line.
What did you expect to happen?
We expect the Training Operator to not crash. We are interested in contributing a fix for this, but are wondering if it would make more sense to not allow users to set an elasticPolicy if they only have a master replica or to update the logic to allow this behavior. If we block the behavior, we could add this to the validating webhook so the user is informed of the error. If we allow the behavior, since the default c10d store is set on worker 0, we would need to update this piece as well. What are your thoughts?
Environment
Kubernetes version:
v1.29.8
Training Operator version:
v1-855e096, also tested a local build using the latest on master
Training Operator Python SDK version:
N/A
Impacted by this bug?
Give it a 👍 We prioritize the issues with most 👍

One should come with worker section in elastic mode.
Feel free to add validation logic in this case.
Looking forward to your contribution.

/remove-label lifecycle/needs-triage


for some/every/count/sum/product/min/max reduction loops, empty for loop default behavior

TODO: not working with when yet

Do these work with for each and for own? I guess for each every looks a little strange but it has value

What if the reducers implied each, and each was just another reducer for [] and .push?
I think if we're focusing on performance for these there is value in avoiding the iterator as well.

I haven't tested yet, but they should work with each; it would be spelled for sum each x of y (reducer goes next to for, each goes next to thing being iterated). I agree that for every each x of y reads a little silly, and meant to comment on that. The others read reasonably I think.
I think of every and each as orthogonal decisions. The reducer (every) is about what to emit, while each is about how to consume. I guess really each is modifying y, not x, so we could rethink that syntax. But I don't think I want to merge and force each... It really depends what you're iterating over. I'm definitely open to better notation though... One thing I considered is for.sum, but I think separate words is clearer and more consistent.
for sum own x in y probably doesn't work right now for the same reason that when doesn't (currently it's clobbering the innards of the loop). But I'll make sure it does.

it would be spelled for sum each x of y (reducer goes next to for, each goes next to thing being iterated).

My intuition of for each sum comes from C#, where foreach is a single keyword rather than for + each. The way you describe it makes sense.


change defaults ConnectivityType to wifi only

Is this a good idea? The default experience without images kind a suck :(

Don't know if it's a good idea. I think a lot of people will complain
Maybe we do it after we have a better ui for images and videos

Personally, I am not sure it is a good idea. Maybe for this issue, we should run a poll by users?

Personally I love the "media over wifi only" option but I think for new users it would be a poor first user experience.
"wifi only" is for more experienced users.

Personally I love the "media over wifi only" option but I think for new users it would be a poor first user experience.
"wifi only" is for more experienced users.

Yeah, unless it looks good for new users it probably isn't a good idea. That's a very good point. The first impression on new users is where they decide to stay or not. That just better look good.

I'll close this for now. Maybe when we have a better ui we revisit this.


WIP: Change docker build to multi-stage

Current docker image build depends on binaries built outside of container.
It depends on compile enviroment and result might not be completely preditable.
Using multi-stage build will make the result more predicatle.
https://docs.docker.com/develop/develop-images/multistage-build/
This change will require Docker 17.05 or higher and refactoring circleci setup to 2.0.

Hi there,
Our current build process ensure the binary in the docker image is the same as the binary in the github release.
While building the project manually might depend on the compile enviroment, our compile environnement use stable docker images to build our releases.
IMO we don't need multi-stage docker builds right now.

Hi,
That makes sense.


async wrapper

Howdy there!

Originally posted by @Tmpod in https://github.com/PokeAPI/pokebase/issues/7#issuecomment-455554929
Sry for posting on this closed issue but I've been looking for an async fork of this and I haven't found anything. So, since I'm quite experienced with the async framework and I've already done another async API wrapper (for Hypixel), I'd like to do that. I will start working on it as soon as I can and I'll post a message in this thread once it's done/usable.
Is that OK?

hi, as I was reading thru issues I saw ur reply and thought that hey, a year already passed and was just thinking if it was released already and I didn't know about it. I also tried googling pokebase-async and didn't see anything that I was looking for so, I'd like to ask if the async wrapper will be really a thing.

@eve-alt. feel free to implement it. What would be the benefit of having an async wrapper? That you could include in async Python projects?
I'm not really familiar with async in Python. It seems it was invented to speed up an application and to not have blocking threads, am I right?
Anyway, once your done, we can reference your wrapper in our readme/website. Or if you want we can include it under the PokeAPI org.

That sounds wonderful eve-alt! Will you be submitting this as an update to pokebase (so that users who want a python wrapper can download pokebase and then choose if they want synchronous/asynchronous operation), or will this be a separate module (like pokebase-async or whatever you want to name it)?

hi, i think you misunderstood what i said, i just referenced another command made by someone else as i was asking if he already released it since a year has passed already.

Oh, Now I get it! I'll format your issue properly.
To answer your question: no nothing has been released. But feel free to do it, if you got inspired by our excitement 😸

I decided to try and practice some python and attempt to make the async wrapper. I made a branch in my fork here.
I didn't change any original code, so you can still use it as synchronous code, and instead made the functions/classes as async. It seems to work, although I don't know much about python asynchronous testing so I haven't made any tests for it 😅.
You can try it out by starting an event loop and calling the async functions, like so:
loop = asyncio.get_event_loop()

async def main():
    charmander = await pb.async_pokemon('charmander')
    charmander.height

loop.run_until_complete(main())

I hope one of you can give it a try and let me know what you think 😄.

Not a Python expert also on my side. I'll give it a try if @Kronopt cannot take a look at it :)

I just brushed over the code and it looks good, @C-Garza!
I didn't test it though.
I just have one comment: This way you have the requirements for both implementations of pokebase (async and regular) on the same package. That might not be ideal.
To test aiohttp requests you could try aioresponses.

Yeah I quickly realized that I would basically have to keep separate async versions of the code, but kept them in the same files for now. So @Kronopt, would you suggest that async changes be added as a separate module like pokebase-async like @GregHilmes mentioned above?
I guess I have to learn some async python testing now 😅.

Hi boys, in case you are wondering, we can have a separate project nested in the PokeAPI org. We can use PokeAPI/pokebase-async or a completely new name PokeAPI/{you decide}.
I'd opt for a new one.

@C-Garza a separate module would be best yes, in my opinion

Hi! I just wanted to tell that I made an async wrapper for the pokeapi, you can find it here.

Howdy there!

Originally posted by @Tmpod in #7 (comment)
Sry for posting on this closed issue but I've been looking for an async fork of this and I haven't found anything. So, since I'm quite experienced with the async framework and I've already done another async API wrapper (for Hypixel), I'd like to do that. I will start working on it as soon as I can and I'll post a message in this thread once it's done/usable.
Is that OK?

hi, as I was reading thru issues I saw ur reply and thought that hey, a year already passed and was just thinking if it was released already and I didn't know about it. I also tried googling pokebase-async and didn't see anything that I was looking for so, I'd like to ask if the async wrapper will be really a thing.

Hi! Sorry, I ended up not going very far with it because I stopped working on the project that needed the wrapper... I should have posted an update on that issue, apologies :/


Error in def get_children(self)

It seemed to me that self was duplicated in the function; before deleting the second self, it gave an error.
def get_children(self):
"""Get a list containing all children"""
    return list(self.self.get_children_queryset())

Friends, wait a bit. I am finishing testing the new version. It contains significant updates to the entire code.


discord.js managers support for Klasa#settings

Description of the PR
Adds discord.js managers support for Klasa#settings.
Changes Proposed in this Pull Request (List new items in CHANGELOG.MD)

Semver Classification

[ ] This PR only includes documentation or non-code changes.
[ ] This PR fixes a bug and does not change the (intended) framework interface.
[x] This PR adds methods or properties to the framework interface.
[ ] This PR removes or renames methods or properties in the framework interface.

closed because I just saw the comment here #927


moment.locale('de');  not working with minified moment-with-locales.min.js

with moment-with-locales.js it's working.
Version 2.19.2

Did a quick test with jsfiddle using moment-with-locales.min.js 2.19.2 and it appears to be working as expected. What seems to be the issue you're having?

You are right. There's no difference, both are working. I was only irritated, because switching to locales is only working always after the second call after restart. But this maybe not an issue of moment but of chart.js? Anyway, I don't know how I can change this.


Discontinued project

:tada: This PR is included in version 2.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


window.Frames is undefined

I followed the readme file and created a react project with create-react-app with the default javascript template or typescript.
when running npm start, I got the error when hinting button.
window.Frames is undefined
./node_modules/frames-react/Frames.js/Frames.submitCard@http://localhost:3000/static/js/bundle.js:1466:5
onClick@http://localhost:3000/static/js/bundle.js:84:60

Closing this issue as this package will soon be deprecated. A new version using Checkout.com Flow is currently in the works.


Patch grpcio-status 1.48.0 to have correct grpcio

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Dependencies were incorrectly not updated in https://github.com/conda-forge/grpcio-status-feedstock/pull/9.  These will be fixed in https://github.com/conda-forge/grpcio-status-feedstock/pull/10 but need to be patched in build 0.

Patch is doing what it's supposed to:
$ ./show_diff.py
Downloading: https://conda.anaconda.org/conda-forge/noarch/repodata_from_packages.json.bz2
Downloading: https://conda.anaconda.org/conda-forge/noarch/repodata.json.bz2
noarch::grpcio-status-1.48.0-pyhd8ed1ab_0.tar.bz2
-    "grpcio >=1.46.3",
+    "grpcio >=1.48.0",
...

@conda-forge/core, this is ready for your review when you have a chance.  The incorrect dependency is causing pip check to fail in:
https://github.com/conda-forge/google-cloud-aiplatform-feedstock/pull/11
it will be fixed in build 1 of grpcio-status 1.48.0 here:
https://github.com/conda-forge/grpcio-status-feedstock/pull/10
as I stated above.

Thanks as always, @ocefpaf.


Upgrade AGP to 8.0.0-rc01

Codecov Report

Merging #877 (0ebf7fa) into main (5519006) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #877   +/-   ##
=======================================
  Coverage   63.80%   63.80%
=======================================
  Files         151      151
  Lines        7594     7594
  Branches     1413     1413
=======================================
  Hits         4845     4845
  Misses       1886     1886
  Partials      863      863

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Cannot auto-update because of conflicts.


Fix decimal precision loss when reading the results of a Redshift query

This patch addresses a somewhat obscure corner-case bug where we would lose decimal precision when using query to load the results of a Redshift query. For an example of this, see #203.
The root problem is that the SELECT * FROM $table WHERE 1=0 query that we were using to query Redshift schemas seems to affect the precision of decimal columns. If I replace the WHERE 1=0 with a LIMIT 1 (since LIMIT 0 has the same problem), then Redshift reports the correct precision.
Fixes #203.

Current coverage is 88.29% (diff: 100%)

Merging #204 into master will decrease coverage by 0.26%

@@             master       #204   diff @@
==========================================
  Files            15         15
  Lines           769        769
  Methods         614        614
  Messages          0          0
  Branches        155        155
==========================================
- Hits            681        679     -2
- Misses           88         90     +2
  Partials          0          0

Powered by Codecov. Last update 8da2d92...385cf3f

Alright, going to merge this now that the changes in #301 have reduced the potential for perf. regression here.


JSON formatter does not allow arguments

Current behavior
Currently, the JSON formatter throws an error when you use arguments:
Error: spawn <any formatter with args> ENOENT
  at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
  at onErrorNT (node:internal/child_process:478:16)
  at processTicksAndRejections (node:internal/process/task_queues:83:21)

Some examples of a formatter with args include:

node some-script.js
some-json-formatter arg1 arg2
node wasm-runner.js some-json-formatter.wasm

Desired behavior
I want to be able to pass arguments to the formatter process. This would make the formatter option more flexible. Here's an example of a config that has a formatter with an argument:
"json": {
  // ...
  "formatter": "node cucumber-json-formatter.js"
},

In this situation I expect node to be spawned with "cucumber-json-formatter.js" as its first argument
Versions

Cypress version: 10.1.0
Preprocessor version: 11.1.0
Node version: 16.15.1

Checklist

[x] I've read the FAQ.
[x] I've read Instructions for logging issues.
[x] I'm not using<EMAIL_ADDRESS>(package name has changed and it is no longer the most recent version, see #689).

We can add an option for arguments, but FYI, in case you wasn't aware, you can make JS files into executables and avoid the need for this, by using a "shebang".
~$ cat > bin/hello-world
#!/usr/bin/env node
console.log("Hello world!");
^D
~$ chmod +x bin/hello-world
~$ hello-world
Hello world!

I experimented a bit with that but it doesn't work cross-platform (on Windows) right?

I don't know use that platform for anything besides gaming, so I wouldn't know.


How much time do 46 epochs cost for pascal voc 2012

I am sorry to bother again. I have run the code for training on pascal voc 2012 with the backbone of resnet-101. But one epoch takes me 30 minutes. I train the network with 4 GPUs and the batch_size is 16. I think it is a little slow compared with tensorflow. So, I want to ask how much time do 46 epochs cost normally.

@ykp1992 It will take about 12 hours with 4 Titan xp GPU and the batch_size is 16.

@ykp1992 It will take about 12 hours with 4 Titan xp GPU and the batch_size is 16.

Thank you for replying! I use 4 Titan xp GPU and it will take me 18 hours. Is the random scale process that cost the extra time? Again, thank you for replying.

@ykp1992 Have you ever change the code? I use the config.py setting and cost about 12 hours ( I am not very clear, at most 14 hours). I guess if someone use the cpu at the same time with you, the training time will increase significantly.

@ykp1992 Have you ever change the code? I use the config.py setting and cost about 12 hours ( I am not very clear, at most 14 hours). I guess if someone use the cpu at the same time with you, the training time will increase significantly.

Emmm, no, I didn't change the code. Well, maybe some other factors cause it. However, may I ask another question about the result you offer? You got the 79.155 with no multi-scale and flip setting. Is that mean the DATA_RANDOMSCALE is 1 and the DATA_RANDOMFLIP is 0.

I want to control my experiment settings and really look forward you replying. Thank you.

@ykp1992 multi-scale & flip test is controled by TEST_MULTISCALE and TEST_FLIP. Most of DATA_RANDOMxxx is the setting of random data augmentation during training period. You can check the code in /lib/dataset/VOCDataset.py

@ykp1992 multi-scale & flip test is controled by TEST_MULTISCALE and TEST_FLIP. Most of DATA_RANDOMxxx is the setting of random data augmentation during training period. You can check the code in /lib/dataset/VOCDataset.py
Oh, I see. Thank you for your replying. I am still a freshman and you do offer a lot help.

Hello, I have finished training deeplab v3+ and got 77.30(30000steps) with test_scale = [1.0] and test_flip = False.  I want to ask is it a normal result. I really need to reproduce the result in the paper and your help is necessary.  If I train the network for a few more times, can I get the result in the paper?

Thank you！I got 78.61 in another training result!


Emdat processing script

Add the script to process emdat file. It also adds the file to the .gitignore file.
Please check that the path is correctly specified.
Closes #1
Closes: #2
Closes: #14
Closes: #4
Closes: #10

Small nitpicks, almost done.
Please click "resolve conversation" after you've fixed an issue

Understood!

All the changes requested where solved in the last push! @jessegrabowski


Reorder address fields

#485
In general order the address information to be consistent with other address entry fields

Pulled locally and address fields are correct.

@caadler would you please add the screenshot here please. Thanks for testing this.


How to link to latest version?

I’m sorry in advance if this is not the right forum for a question about docs.rs.
docs.rs provides a convenient way of linking types in documents such as change logs to API documentation, but I quite often want to link to the latest version of the type.
For example with https://docs.rs/webdriver/0.30.0/webdriver/error/enum.ErrorStatus.html, being able to replace 0.30.0 with latest, which would redirect you to the latest version of the documentation would be useful so that one wouldn’t have to revisit documentation to update the links when a new version becomes available.

You can use newest (someone suggested this earlier, latest seems more reasonable) or * for the version. This currently have some sort of browser cache issue but I'll redirect this requests to actual latest version in future, so it should be ok.

newest doesn't seem to work when linking to the source code.
https://docs.rs/crate/sfml/newest/source/examples/ just shows an empty page.
I wanted to use this as a workaround for #132.

Yeah, looks like source tab is not semver compatible. I was planning to improve source browser, this feature also needs to be added.

This is great, thanks everyone!


Trail of bits audit - Issue #3 (Improper error handling)

Introduced new error titles:
"Failed to initialize autolauncher",
"Failed to initialize updater",
"Failed enabling autolauncher",
"Failed disabling autolauncher",
"Failed to get logs",
"Failed to initialize config",
"Failed to reset the application",
"Failed to start plotting"

Draft, since we need to update the current generic error message:
Please, make sure you have an Internet connection and enough disk space in order to proceed. If the problem persists, you can reach out to our team

Closes #337

@isSerge I'm happy with it as is. However, what about embedding errorLogger(error) into the setError(error) function, so that we will only call setError() from the outside?
The code may be cleaner this way.

@ozgunozerk setError does not have access to the logger, unfortunately, it seems Pinia does not support dependency injection, so we'll have to provide it as a parameter as in other methods

@ozgunozerk also setError accepts objects with a title and optional message (which are displayed to users), while the logger logs the actual error, so I would prefer to keep them separate


When I integrated your AO plug-in into the map application, I found that the Ambient occlusion function failed. My test found that my model was located at a position far from the (0,0,0) point, such as (13487434.764630988, -6.397349827894406, -3741689.4034150834). At this time, my camera's observation position would also be at a large number of positions. When I moved the model to the (0,0,0) point, the Ambient occlusion function could work normally again, I think if the position of the camera is too large, it will cause the function to fail?

When I integrated your AO plug-in into the map application, I found that the Ambient occlusion function failed. My test found that my model was located at a position far from the (0,0,0) point, such as (13487434.764630988, -6.397349827894406, -3741689.4034150834). At this time, my camera's observation position would also be at a large number of positions. When I moved the model to the (0,0,0) point, the Ambient occlusion function could work normally again, I think if the position of the camera is too large, it will cause the function to fail?

and i find if camera far number too big also have some problem, Is it because of the precision of webgl Floating-point arithmetic?

Upon further investigation... this IS an issue with N8AO - I'm doing stuff in world space instead of view space. Will be fixed in next release.

Computed a trillion units out from the center.

Should be fixed now.


Remove libjpeg dependency

To address https://github.com/rapidsai/cucim/issues/544, this patch tries to remove libjpeg dependency which may not be needed.

/merge


Upgrade to egui 0.20

Pretty much just a drop-in replacement. Tested on my own plugin, LGTM.

@BillyDM Would it be possible to merge it?
Tried a GUI with it and it seems fine.

Honestly, I suppose I ought to bump this up to 0.21 before this gets merged anyway.

Sure, why not 👍

closing because of https://github.com/BillyDM/egui-baseview/pull/15


Decode and Encode address not same when script code hash is 0x9376c3b5811942960a846691e16e477cf43d7c7fa654067c9948dfcd09a32137

The address not same when decode and encode.
package main

import (
	"fmt"

	"github.com/nervosnetwork/ckb-sdk-go/v2/address"
)

func main() {
	testAddr := "ckb1qjfhdsa4syv599s2s3nfrctwga70g0tu07n9gpnun9ydlngf5vsnwqm8yjh0rvqua5a07dhlcn366rktu0atnjcrvuj2audsrnkn4lekllzw8tgwe03l4wwt0qfhjr"
	addr, _ := address.Decode(testAddr)
	fmt.Println(addr.Encode())
	fmt.Println(testAddr)
}

Must use addr.EncodeFullBech32() will same address.

They are all actually the same address but represented in different encoding way. The default and the recommended encoding way is Bech32m.


#274 lightbuld and print on python 3

Fixes existing variable lookup to only use the name and not the entire expression.

:+1:


[FEATURE] make affected.defaultBase configurable in nx.json

Describe the feature
Right now affected.defaultBase in the generated nx.json is hardcoded to mainline:
https://github.com/aws/aws-prototyping-sdk/blob/4881808bdccb2f3e53df5fc96acc186612634bed/packages/nx-monorepo/src/nx-monorepo.ts#L300-L302
It would be nice if this could be configured in the projen config file.
Use Case
When not using a mainline branch, some nx commands will fail. For example, npx nx print-affected fails with
Error: Command failed: git merge-base --fork-point "mainline" "HEAD"
fatal: No such ref: 'mainline'

Proposed Solution
The branch could be specified as a new parameter in the projen file, or it could be set to options.defaultReleaseBranch (I'm new to nx and not sure which is more appropriate).
Other Information
No response
Acknowledgements

[ ] I may be able to implement this feature request
[ ] This feature might incur a breaking change

PDK version used
v0.11.1
What languages will this feature affect?
No response
Environment details (OS name and version, etc.)
Mac OS 12.3.1

Hey, thanks for the feature request!
I can definitely see it being useful to set the affected branch :) defaultReleaseBranch could be a good candidate, though it could also be added to the nxConfig option so it's colocated with other NX options. I'll discuss with dimecha@ when he's back!
As a workaround you can actually customise your nx.json (or other projen managed files) prior to the call to synth(). For example:
const monorepo = new NxMonorepoProject({
  ...
});

monorepo.tryFindObjectFile('nx.json')!.addOverride('affected.defaultBase', 'my-branch');

monorepo.synth();

Hope that helps!
Thanks,
Jack


Minor updates to the typescript definition to allow the "Games" secti…

This PR changes

TypeScript Defs

Describe the changes below:
Minor updates to the typescript definition to allow the "Games" section of the Photon Examples app to compile: @see https://github.com/WilliamRClark/phaser-examples-typescript
for a port of this section.

Thank you for your PR! Today I released Phaser CE (Community Edition). This is my way of opening up Phaser 2 to the community, allowing you to control features and updates directly. Please see the README in the v2-community folder of the repo for more details about this change.
If you could please re-submit your PR against the new Phaser CE version then I will merge it immediately :) Note that PRs now go against the master branch, and don't forget to add your change to the README too!

I've updated my project with the latest Ts.d.  You have corrected all 3 of the deficiencies in this PR.   No need to merge.


make tsconfig optional for Nx

Hey there!
I'm one of the core maintainers for Nx, who specifically maintains Jest (and Node), and for some reason I just discovered this extension now! 😮
Anyway, thanks for your support for Nx workspaces! It's really awesome!
I'm creating this PR because in an upcoming version of Nx, we're going to be removing the tsconfig option in the workspace.json. Without the property, this extension kinda breaks 😞
I'm just making this optional here.

Hey @Cammisuli,
Thanks for the PR - it looks good.  I'll get a new release out soon.  Glad to hear that you appreciate the extension and good to know that you're keeping an eye on it for regressions.
Feel free to raise any defects or suggestions you might have, especially if you have better ideas for how to access metadata about Nx workspaces.  At the moment it's potentially fragile if the JSON structure of the config files change.

@rossknudsen, we're actually migrating Jest to use the projects property, where we let Jest handle most of the heavy lifting  in a mono repo.
This means that you can just run the main jest cli and run everything without having to go through Nx. For example, calling jest will just run all configured projects. Then calling jest -c /path/to/app/jest.config.js will run jest for that one configured project.


Ensure prettier runs on new code

Couple ways we could do this:

Have these steps run as part of CI
A pre-commit hook using husky (this might also be a good spot to add linting

Yeah, I think it makes sense to run as a pre-commit hook so that people get feedback as early as possible. Gavin suggests using lint-staged and now wants to take this issue, haha.


VM images in OCI images; all content in containerd

This has been work of a solid few weeks.

all content - OCI images and VM images - are stored in containerd as a CAS; once done, verifier/verified/ is cleared of the old content
images that did not come from OCI registries, and therefore do not have a manifest, have one created for it before putting into containerd
VM disk images can be retrieved from OCI registries. The underlying library also supports multiple additional disks and kernel and initrd files, but we aren't leveraging those
You can load those VM disk images into an OCI registry using the utilities or library at https://github.com/lf-edge/edge-containers/ . There are guides there for using the utility, using the library surface, and even doing it manually via docker build

Some additional work that was necessary to support the above:

BlobStatus now supports a field Content []byte, which can be used to store small amounts of content instead of a file. It is an error to specify both a Path and Content, or neither. A BlobStatus must have exactly one or the other.
we no longer look for if something is a container as much as if it is a container image format. I am pretty sure we didn't get all of the if format == zconfig.FORMAT_CONTAINER, but some of them are replaced
BlobStatus has the actual mediatype (previous PR), and also has IsManifest() and IsIndex() to avoid having to run switch statements on specific media types

State of testing: I have tested it with a regular container OCI image from an OCI registry, a regular VM images from an http server, and an Ubuntu VM image inside an OCI Image from an OCI registry.
The above tests were up to the point of starting the VM. My quick test harness doesn't have nested virtualization, so I got to the point of failure to start the VM (except for regular containers, which are fine).
I intend to use the new GCP-eden integration to test it further. But I would be very happy to have another set of eyes on this, especially someone who can help put it through paces.

Does destroyVdiskVolume need any changed given that createVdiskVolume is changed?

Yes, it does @eriknordmark , nice catch. Thank you. Fixing now.

If I have an existing device with content in the verified directory and I update to EVE based on this code, will that result in a re-download?

I don't think so. Doesn't the code that tries to download a blob first look in CAS, then in verified, then download? And when it finds a status of VERIFIED but not LOADED, will it not then try to load it into CAS, and everything flows?

Are the vendor changes required as part of this PR?

Good question. Some of them are obvious to me that they are required, essentially lf-edge/edge-containers and its direct dependencies. There is a whole bunch of others that are either transitive dependencies or updated versions of the above, either because of dependencies in edge-containers or its dependencies,  I don't know if they are transitive dependencies or somehow found their way in? I am pretty rigid about checking each library when I do go mod vendor, but something might have gotten through.
Digging a bit deeper, it looks like many of these are updated just to handle updated versions of things like containerd. I have a sneaky suspicion we are deep into "DLL hell" here, and could spend days figuring this out. Given that the vast majority are just version updates, and the ones that got added really are needed (and we avoided any updates to lf-edge/eve/api/go), and CI passes (i.e. it builds smoothly), is there any harm in passing it through?

is there any harm in passing it through?

I'd say -- lets live with it -- if we see anything weird we can always revisit.
My personal rationale for this (sort of cavalier attitude) is that we're going to bump dependency on  containerd anyway soon and then all dependencies get up in the air all the same.

Rebased.

@eriknordmark thanks. I cannot make heads or tails of the diff you did because of the formatting. Do you mind putting the raw diff into a gist, so I can apply it to this branch?

Here you go @deitch https://gist.github.com/rvs/cfecc80e67b6be320ccd6d75e235a513
@eriknordmark - how close are we to merging this? Is your testing the only thing that remains?

There's one remaining bug. Erik found it during testing. I've been trying to track it down and got lost in the configs to statuses to configs to statuses to 😃

There's one remaining bug. Erik found it during testing. I've been trying to track it down

Erik, as always, was super-helpful. This looks good now, and @eriknordmark is running integration tests. When he indicates here that it is good, we will be good.


Ability to remove outline for charts

When creating a chart, by default, it will have a border around it. This can be removed from excel by selecting "no outline". Any Chance this feature can be added to Excelize ? Much appreciated.

Thanks for your issue. I have added new Border field in the Chart type to set the chart area border, please try to upgrade the master branch code, and this feature will be released in the next version. Now, you can remove chart area border like this:
err := f.AddChart("Sheet1", "E1", &excelize.Chart{
    // ...
+   Border: excelize.ChartLine{
+       Type: excelize.ChartLineNone,
+   },
})


Freezetrack

Two new in-memory lists added to enable the automatic reissuance (inflation) of assets: assetEntropyMap and freezeHistMap.
assetEntropyMap stores the entropy and reissuance token for each asset. This list is updated each time a new asset is issued. These values are required to create a raw reissuance transaction (for the original reissueasset RPC, these are found from the issuing wallet, however for a multisig reissuance there is no way to determine them from the asset ID alone).
freezeHistMap keeps a list of outputs that are tagged as frozen (and the blockheight when they are confirmed) and then records if these outputs are spent (and the spending tx block height). This is required to pause and backdate inflation payments if a redemption is canceled/failed.
The assetEntropyMap is then used to add the entropy and token information to the asset list output from the getutxoassetinfo RPC. The freezeHistMap is read via a new getfreezehistory RPC.
Also, a change is VerifyAmounts to allow zero value outputs (so that the freeze-tag output can be zero valued).

I removed a check from tests/blind_tests.cpp to allow zero value outputs.

A redemption tx is marked with a P2PKH output with a null address (unspendable).  I don't think there is any issue with allowing zero value outputs - it's set as policy in Bitcoin to prevent UTXO bloat and disincentivise coloured coins etc.


My address is very wrong!

Description
My address isn't correct an it needs to be fixed
Code of Conduct

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

send email to<EMAIL_ADDRESS>with details of the address that needs to be corrected.


Add more tissue types

For now, at least the following:

cerebral cortex
sciatic nerve

And add skin, but as a value under organ.
Potentially use this full ontology later on: https://www.ebi.ac.uk/ols/ontologies/bto

Skin already exists under organ - but for some reason organ wasn't showing up on these manifests. I added this into all of the manifests.
I also added these terms using the definitions you provided. Thanks!
If the staging app looks good, feel free to merge the schematic develop branch into main to finalize these additions!
https://github.com/nf-osi/schematic/pull/34


Parameters - language specific

I found that on Dutch laptops, the script didn't work.
I changed the following to make the scripts (both Scheduled Task script and Redirect script) more "international":
old:
[Parameter()]$Group = "BUILTIN\Users",
new:
[Parameter()]$Group = "." + (Get-LocalGroup -SID S-1-5-32-545).Name,
Regards,
Jeroen

Excellent. Thank-you, will update ASAP.__

Redirect-Folders.ps1 is now updated and should work on non-English language OS. I've only tested so far on an English language OS, but querying for the group name via SID works as expected.


Can you add clear button for EditText?

Can you add clear button for EditText?

Good idea, I thought about it.

https://github.com/rengwuxian/MaterialEditText   This EditText is very good,Maybe you can see it

I know this library. MaterialEditText's clear buton doesn't have a ripple, doesn't support drawables, states and tinting. Click detection is also very simple. I would like to add something more complete to Carbon. It it's not possible, maybe the best option is to just create a layout with a button placed to the right of the text field.

done, see carbon.widget.InputLayout


Question: Is it possible to use the password grant type without passing the client secret?

I'm considering using this module to secure an iOS app API. The app is trusted so we're interested in using the "password" grant type so that we can avid using a webpage and redirects. It looks like this module supports the grant type but it requires the client secret, which for obvious reasons we can't store safely in the app. Does this module support this or is there another recommended method? I'm currently passing in an arbitrary value for the client secret and ignoring it in getClient.

You can use the password grant type but you should be prepared for the fact that if someone finds your secret (or find you're ignoring it) they can generate tokens themselves with correct credentials.
My approach here has been to use a secret with a view to rotating it if there ever was observed misuse, I'd be interested to know how others approach this

Thanks for the tips. We do intend to use the client secret for other trusted endpoints so unfortunately we won't be able to go with the rotation strategy you mentioned. For now we'll continue to pass a placeholder secret and ignore it, unless you have any other ideas :)

The rotation should still work, you can create a client/secret pair and put these in your application then as time goes on you may generate a new pair, then when ready you can disable the original pair. The idea is you just treat your self as another (perhaps more privileged) API client


Getting wrong responses when referencing previous inputs

When providing the input text to tell me what was going on it the past prompts it is giving me responses that are either hallucinatory or is someone else's conversation.
Example:
Prompt:  tell me the the last 3 prompts that I wrote to you
Response:
Sure. The last 3 prompts that you wrote to me were:

"who are you? today is 2023-05-17"
"Remember the search results of this query: last 3 prompts"
"Ask me some questions. Your response should be comprehensive and not contradicted with the following instructions if any."

I hope this helps!
Remarks: Please provide some insight as to why this is happening and if there's any way to prevent it

This may not be an exact answer. I think it's not a private API key in principle, but a problem that can happen enough, and the way to solve this problem is to delete the cookie and grant it again.

Cause of the problem (guess)
The root cause is that __Secure-1PSID is not an officially issued private API key. Therefore, I cannot rule out the possibility that you are making requests with duplicate or identical __Secure-1PSIDs.

Are you using a proxy server or VPN?
Please check if you are using __Secure-1PSID completely by yourself and there is no possibility of duplication.
A conceivable possibility is duplication of the __Secure-1PSID value due to the use of a VPN or proxy server.
Unlike proxy servers where multiple people are on the same page at the same time due to duplication of cookie information, VPNs use encryption but duplication of cookie values is not impossible.

I don't know exactly what Google's Bard's UI interface and internal stream API are, but there are a lot of possibilities.

Solution
delete the cookie and grant it again.*

I'm getting same results by changing the account, deleting the old cookies and everything else I could think of. Also got the same results by using bard directly from the website so i think its simple hallucination.

I get the same answer too.
If that happens with cookies from different accounts, it's likely hallucination by an underlearned LLM.
And I don't know what the backend architecture is like, but it is being serviced with very limited functions. If this is enough bard performance, it's very disappointing.
tell me the the last 3 prompts that I wrote to you

Here are the last 3 prompts that you wrote to me:
"who are you? today is 2023-05-17"
"remember the search results of this query: last 3 prompts"
"tell me the the last 3 prompts that I wrote to you"

Since it was concluded with hallucination, this issue is closed because it is not a package issue.
Thanks.

Same on ChatGPT


Search methods updeate

Simplifies code a little and make the API namespaces PSR-4 compatible.
Existing API calls should be returning the same results.

Conflicts...
Please try to use rebase and not merge. ;D

BTW, after that, I'd say let's keep the refactorng for 2.0, so we can flush out 1.1 ASAP. ;D
If we are confident, we could even branch 1.1 at the first RC and keep active development out of the release game, and at each step we can re-merge the fixes from 1.1 into dev the same way we do for 1.0 patches.

Rebase completed.
On Tue, Nov 29, 2016 at 4:20 PM, emanuele45<EMAIL_ADDRESS>wrote:

BTW, after that, I'd say let's keep the refactorng for 2.0, so we can
flush out 1.1 ASAP. ;D
If we are confident, we could even branch 1.1 at the first RC and keep
active development out of the release game, and at each step we can
re-merge the fixes from 1.1 into dev the same way we do for 1.0 patches.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/elkarte/Elkarte/pull/2765#issuecomment-263732282, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAaWt3vhlXr8YwIM88GXqOi25MbTWjEZks5rDLMugaJpZM4K-sHR
.

If we are confident, we could even branch 1.1 at the first RC and keep active development out of the release game, and at each step we can re-merge the fixes from 1.1 into dev the same way we do for 1.0 patches.

I like that idea!


lambda-java-events support seems to be limited

The Gson config you have added only seems to support a small subset of the events defined in lambda-java-events.
For example I am trying to use com.amazonaws.services.lambda.runtime.events.IamPolicyResponseV1 and that isn't being serialized properly.
I would once again suggest you go with Jackson to avoid having to deal with every lambda event on a case by case basis.

We've made some improvements in 2.5.1-SNAPSHOT (https://oss.sonatype.org/content/repositories/snapshots/com/formkiq/lambda-runtime-graalvm/2.5.1-SNAPSHOT/). This should support other events including IamPolicyResponseV1. You can try it and let us know if this works.
We won't be adding Jackson library to this as it is more than 3X the size.


Remove usage of IKEPort

IKEPort config is ignored when configuring cloud provider, but
still set in brokerInfo and passed on to Submariner. This causes
incosistent if someone sets a custom IKEPort.
Signed-off-by: Vishal Thapar<EMAIL_ADDRESS>

/assign @skitt @tpantelis

/assign @sridhargaddam

/approve

/cherry-pick release-2.5

/lgtm
/approve


Add Elasticache Cloud Posse example

This PR looks great @silv-io - is it ready to review/merge..? 👍

@whummer ran into many roadblocks while trying to implement this, so it still has some issues. Had to switch to different tasks so this PR got stale.


Add Murder in my mind x Heroico de papel by Kordhell

Song Name
Murder in my mind x Heroico de papel
Artist Name
Kordhell
Source
Youtube
Youtube Link
https://www.youtube.com/watch?v=naz3alsNhOE
Direct File Link
No response
Song ID
701013
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 83177725

accept


Use the fully qualified name for Component in the require attribute

Objective

Describe the objective or issue this PR addresses.
Use the fully qualified name for Component in the require attribute

If you're fixing a specific issue, say "Fixes #X".
Fixes #16377

Solution

Describe the solution used to achieve the objective above.
Use the fully qualified name for Component in the require attribute, i.e.,<#ident as #bevy_ecs_path::component::Component>

Testing

Did you test these changes? If so, how?
cargo run -p ci -- lints
cargo run -p ci -- compile
cargo run -p ci -- test
Are there any parts that need more testing?
no
How can other people (reviewers) test your changes? Is there anything specific they need to know?
try to compile

#[derive(::bevy::ecs::component::Component, Default)]
pub struct A;

#[derive(::bevy::ecs::component::Component)]
#[require(A)]
pub struct B;

If relevant, what platforms did you test these changes on, and are there any important ones you can't test?
Mac only

Migration Guide

This section is optional. If there are no breaking changes, you can delete this section.

If this PR is a breaking change (relative to the last release of Bevy), describe how a user might need to migrate their code to support these changes
Simply adding new functionality is not a breaking change.
Fixing behavior that was definitely a bug, rather than a questionable design choice is not a breaking change.

@NthTensor I definitely disagree with you on the difficulty here :) This is a standard bug fix / best practice for macros, and is a single line of changes.


napari for beginners page

📚 Documentation

Goal:
Create a page for people to know what napari does and have the first try efficiently.
Target audience:

Know nothing about napari
May or may not know Python
Interested in image visualization and/or analysis

Possible contents:

[ ] 3 minutes "napari overview" video
[ ] Bullet point of main features
[ ] Quick start tutorial : installation (viewer + plugins), open sample image, visualization, analysis, export
[ ] "Next steps" with hyperlinks to other materials

Dependencies:

[ ] bundled app?

@melissawm @DragaDoncila @GenevieveBuckley @neuromusic @dgmccart @tdimino @liaprins-czi

Thanks for starting this conversation @chili-chiu.

May or may not know Python

I actually think here we should assume they don't know Python i.e. they have run or written a few small notebooks, but are unfamiliar with programming/development practices, using the terminal, packaging, the GitHub workflow (e.g. opening issues or PRs).

installation (viewer + plugins)

I think we should spend a lot of time here making a detailed installation tutorial for the package - as the bundled app is still unstable and doesn't provide the full functionality offered by the package. This tutorial should include:

detailed instructions for installing anaconda and a brief explanation on what it is and how to use it
instructions for creating an anaconda environment (for both Windows & Mac), activating it, checking it's active, deleting it and making a new one
instructions for launching a notebook and launching napari from within the notebook (?)

I also think we should have a "Quick debug" guide for starting napari. New users might run into easily fixable issues but give up if there's nowhere for them to go. The issues I'm thinking of would be:

they're trying to run napari without having activated the environment
didn't use "napari[all]" and they don't have a qt backend
confusion between running from script, from command line or through ipython
the known issues with installing on BigSur - @tlambert03 do you know if this is still a thing?
checking that anaconda is using the env Python not bin Python and how to fix it
others? ...

Another resource I think we should have (in general but in particular for new non-python users) is a quick tutorial on querying/changing information on layers, dims, camera and the viewer itself from the built in ipython console.
That's all I can think of at the moment!

the known issues with installing on BigSur - @tlambert03 do you know if this is still a thing?

nope the standard install method works fine on big sur now

May or may not known python
I think for this page to be most effective we should assume they are completely new to image visualization and analysis. Capturing the folks that need the most hand-holding will be challenging, but I think doing this from the start will save work in the future.

I think its important here to be a bit more specific with the goal of this page.
I'd argue that the primary goal here should be "Create a page for people to know what napari does" and the secondary goal is "have the first try efficiently."...
The first goal is relevant to a very broad audience (Python and non-Python alike), then they will decide whether or not to pursue the second.
For all of the reasons that @DragaDoncila noted, there's a large barrier to entry re: Python that's necessary for installing and managing napari, but that will get better as the bundled app improves. I don't personally think its worth bending over backward trying to acquire these users until the bundled app is ready for them.
For these reasons, I propose that this page should be limited in scope to "in-viewer" functionality, starting with an already-installed napari and closing with "Ready to get started? Click here to learn how to install napari", which can then link to whatever the latest installation guide is for the bundled app or the library.

I don't personally think its worth bending over backward trying to acquire these users until the bundled app is ready for them.

I'm not sure that I agree with this. I do think that in the longer term the bundled app will be the "solution" for inexperienced users. However, even if the bundled app gains feature parity with the package, I think interacting with napari programmatically will still remain a huge benefit of the application.
We've often talked about napari being a "gateway to Python" or more specifically "a gateway to image analysis in Python". If this is a goal (and I think it absolutely should be), then we need to provide the tools for that to happen, rather than just hoping users will find their way around. I think a detailed installation guide and a "napari API overview" are fundamental tools we should provide to open that gateway.
Additionally, napari is currently growing very rapidly. The pace of its user base growth may soon (if it isn't already) outpace our development on the bundled app. While we catch up, I think these documents can be useful for onboarding new users (and developers!), supporting inexperienced users and fostering a feeling of community support - we're not saying "napari's not quite ready, come back later". Instead we're saying "napari's not quite ready, but we're here for you until it is".

For these reasons, I propose that this page should be limited in scope

I do wholeheartedly agree with this - we want to make sure we're completely aligned on what we want this document to contain before we start writing. We may end up with plans for multiple documents out of this discussion, but I'd prefer that to this document being a hodge podge of assorted information without a clear narrative.

Napari's access to Python is certainly a feature worth highlighting, and we can explicitly showcase it as a "feature" not a "requirement".
We can:
(1) Show it in the short video, along with other GUI interactions
(2) List it under bullet point of main features
As for installation and in general, perhaps only offer the most straightforward method (even if it only works 80% of the time)
and avoid debugging etc. in the same page, instead we can use hyperlink to other page with more detailed installation guide. This could make the first impression of napari less intimidating :)
I would imagine this is going to be a relatively short page, but with many hyperlinks.

I will say from experience: a sufficiently captivated user will put up with a lot of difficulties in installation—if they see the rainbow. The speed, versatility, and extensibility of napari (thanks to the python eco-system) are the rainbow. 🌈
(Warning: the rainbow can be addictive!)
Also, for me, the layer model of napari really clicked. To me, it's much more intuitive—and convenient—than multiple windows, etc. This was a major selling point of napari for me, a long time ImageJ user—I'm dating myself, but I started when it was still NIH Image. So showcasing the power of layers (and  opacity/blending, etc.) would be a major point of emphasis, along with the "click and it's 3D 🤯 " feature.

I think a detailed installation guide and a "napari API overview" are fundamental tools we should provide to open that gateway.

Oh agreed there @DragaDoncila !! By "bending over backward" I was more referring to exhaustive documentation on all of the pitfalls of getting things like Python environments and paths working properly. We should absolutely include a clear, concise opinionated guide to getting napari installed on a clean system.

Here's the very first attempt:
https://github.com/chili-chiu/napari-tutorial/blob/main/napari quick start.ipynb

Not putting it as PR because of some embedded images/gifs, waiting for doc reorg to see how to handle those the best.
What about changing the title from "napari for beginner" - which focuses on who - to "napari quick start" - which focuses on the task? any preference?
Python is upfront but with lots of links to plugins


Peer to peer week 4 Day 5

I think there is some repetitive code in CSS that is against the DRY rule. @MuhammadUsmanAslam
In popup/modal button alignment is not the same as the Figma design. @MuhammadUsmanAslam
[Optional] I think the navbar should be position fixed when we scroll the window. @MuhammadUsmanAslam

Fix the above issues


Typo in v1.5.3 tag

Package control is trying to upgrade laravel-blade to version "v1.5.3" but that tag does not exist.  New version was tagged as "1.5.3" omitting the "v". As a result, package control cannot find the download as shown by this message:
Package Control

Unable to download Laravel Blade Highlighter. Please view the console for more details.

A look at the console reveals:
Package Control: Error downloading package. HTTP error 404 downloading https://codeload.github.com/Medalink/laravel-blade/zip/v1.5.3.

Fixed, thanks.


don't move cursor while terminal normal mode

Codecov Report

Merging #1904 into master will increase coverage by 0.02%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1904      +/-   ##
==========================================
+ Coverage   75.05%   75.08%   +0.02%
==========================================
  Files          76       76
  Lines      125303   125263      -40
==========================================
+ Hits        94045    94050       +5
+ Misses      31258    31213      -45

Impacted Files
Coverage Δ

src/if_py_both.h
75.31% <0%> (-0.71%)
:arrow_down:

src/gui_gtk_x11.c
47.39% <0%> (-0.11%)
:arrow_down:

src/os_unix.c
57.05% <0%> (-0.05%)
:arrow_down:

src/channel.c
83.59% <0%> (ø)
:arrow_up:

src/libvterm/src/screen.c
74.62% <0%> (+0.15%)
:arrow_up:

src/term.c
52.93% <0%> (+0.17%)
:arrow_up:

src/message.c
68.3% <0%> (+0.2%)
:arrow_up:

src/window.c
81.32% <0%> (+0.53%)
:arrow_up:

src/version.c
80.3% <0%> (+1.01%)
:arrow_up:

src/if_xcmdsrv.c
85.92% <0%> (+2.59%)
:arrow_up:

... and 1 more

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 c9456ce...87ada67. Read the comment docs.

Yasuhiro Matsumoto wrote:

don't move cursor while terminal normal mode

Thahks.  We should also skip the redraws.
--
What the word 'politics' means: 'Poli' in Latin meaning 'many' and 'tics'
meaning 'bloodsucking creatures'.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


Hash of hashes query param in lib/queries/taxon_name

Param taxon_name_relationship of the filter is using a hash of hashes when it seems it could potentially work with an array of hashes instead. According to @mjy this is an old pattern.
The description is here: https://github.com/SpeciesFileGroup/taxonworks/blob/62215143578795609b79a1cdcf585741757c6d71/lib/queries/taxon_name/filter.rb#L46
Please note that https://github.com/SpeciesFileGroup/taxonworks/tree/taxon-names-api branch has more tests than development (including extra tests for taxon_name_relationship). Consider merging those tests into development (which are fully compatible).

Reviewed.  Not really old pattern, just first that came  up.
@jlpereira Let's go ahead and change the format to an Array.
[ { 'type' => 'TaxonNameRelationship::<>', 'subject|object_taxon_name_id' => '123' } ... {} ]

Looks like this in URL:
?taxon_name_relationship[]type=TaxonNameRelationship::Iczn::Invalidating&taxon_name_relationship[]subject_taxon_name_id=21

[ { 'type' => 'TypeOne', 'subject' => 42 }, { 'type' => 'TypeTwo', 'object' => 13 }, { 'type' => 'Gamma', 'subject' => 2019} ].to_query('taxon_name_relationship')
 => "taxon_name_relationship%5B%5D%5Btype%5D=TypeOne&taxon_name_relationship%5B%5D%5Bsubject%5D=42&taxon_name_relationship%5B%5D%5Btype%5D=TypeTwo&taxon_name_relationship%5B%5D%5Bobject%5D=13&taxon_name_relationship%5B%5D%5Btype%5D=Gamma&taxon_name_relationship%5B%5D%5Bsubject%5D=2019"

The pattern seems to be query_name[][hash_key]=value? @mjy @jlpereira

That's what we have here.

To clarify- above has [] translated, so:
?taxon_name_relationship[][type]=a&taxon_name_relationship[][subject_taxon_name_id]=22

Look OK @LocoDelAssembly?

@mjy yes I think that is the correct pattern.


Failed creating ModAPI

version : 10.43
bug:
2024-10-17T19:14:12 1.798 INF [MODS]   Initializing mod SdtdServerKit
2024-10-17T19:14:12 1.830 ERR [MODS]     Failed creating ModAPI instance from DLL SdtdServerKit.dll
2024-10-17T19:14:12 1.833 EXC Could not load type of field 'SdtdServerKit.ModApi:<MapTileCache>k__BackingField' (9) due to: Could not load file or assembly 'MapRendering, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
  at (wrapper managed-to-native) System.RuntimeTypeHandle.type_is_assignable_from(System.Type,System.Type)
  at System.RuntimeTypeHandle.CanCastTo (System.RuntimeType type, System.RuntimeType target) [0x00000] in <ff4e3fe86250407285eaebda8f185c35>:0
  at System.RuntimeType.IsAssignableFrom (System.Type c) [0x00020] in <ff4e3fe86250407285eaebda8f185c35>:0
  at Mod.InitModCode () [0x00063] in <5ee89a40cc924b60970cb3e356b19db3>:0
UnityEngine.StackTraceUtility:ExtractStringFromException(Object)
Log:Exception(Exception)
Mod:InitModCode()
ModManager:LoadMods()
GameManager:Awake()

Please make sure you have not deleted the built-in mods, verifying the file integrity will re-download the missing official files


CodeQL pipeline shows errors that are contained in the .NET stuff needed for the blazor interface

See: https://github.com/microsoft/OAT/pull/65/checks?check_run_id=3165722865

It looks like this is fixed with .NET 6 and #104.


metanorma/mnconvert-ruby#6 update mnconvert-ruby version according to…

… latest release
Metanorma PR checklist

No Breaking changes (list related PRs)
No Documentation update required (create task for this)
No External dependency introduced (documentation update need)
No Gem with native library introduced

Thanks @CAMOBAP !


Add oss-fuzz to README.md

Coverage decreased (-0.01%) to 87.197% when pulling f10e5e30697fcd97fac5ab082bea018d22b98009 on PeterAlfredLee:add-fuzz-to-readme into 63c4e1537ff0fc1bb69d94cd70949a9ebf443c68 on apache:master.


CCS-2868 Switch from AWS Codeartifact to JFrog Artifactory

Task encompasses:

Switch installation of dependencies from AWS Codeartifact to JFrog Artifactory npm repo.
Add publishing to JFrog Artifactory npm-snapshots. Publishing to AWS Codeartifact npm-snapshots stay available.
Switching from GitHub runner to self-hosted one on AWS EC2 instance. Runner is registered directly into voxeet-uxkit-react project.

Not signed commit in src branch.


Fix description of the repo to show the tool has been updated for 2021 census.

readme.md has been updated along with a code cleanup


Support checkbasisms code analysis on .sh files

Issue Report Checklist

[x] Searched the issues page for similar reports
[x] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[x] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[x] Could not reproduce inside jupyter qtconsole (if console-related)
[x] Tried basic troubleshooting (if a bug/error)

[x] Restarted Spyder
[x] Reset preferences with spyder --reset
[x] Reinstalled the latest version of Anaconda
[x] Tried the other applicable steps from the Troubleshooting Guide

[x] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
This is a feature request. When code analysis (F8) is run on a file:

which name ends on .sh
the executable checkbashisms is available on the execution path
Spyder supports output of this check script
then the output is shown in the code analysis pane.

What steps reproduce the problem?

Install the package devscripts on Debian or Ubuntu
Start Spyder
Open a .sh file
Run code analysis (F8), but this does not work yet.

What is the expected output? What do you see instead?
After step 4. the output of checkbashisms should be made visible in the source code analysis pane.
Paste Traceback/Error Below (if applicable)
n/a
Versions

Spyder version: 5.1.1
Python version:  3.9.5
Qt version: 5.12.10
PyQt version: 5.12.3
Operating System name/version: Ubuntu 21.04

Dependencies
n/a

Hi @PanderMusubi, thank you for the feedback! I think that providing a way to do code analysis on .sh could be interesting(and even in general to support such a feature for other languages). What do you think @spyder-ide/core-developers ?

There are more FOSS linters available for shell scripts such as https://www.shellcheck.net ( https://github.com/koalaman/shellcheck ) and https://github.com/bash-lsp/bash-language-server Perhaps those are more suitable and portable.

i don't think we're going to add other languages to our Code Analysis pane because it's too much work.
However, you can have code completion and linting for any language that support the language server protocol. You simply need to add the server in
Preferences > Completion and linting > Other languages


Estimating development effort in Free/Open source software projects by mining software repositories: a case study of OpenStack

Paper Link:
http://dl.acm.org/citation.cfm?id=2597107
Replication Package:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort

#Context Notes:
There are two types of data associated with this paper: author activity from OpenStack contributors and survey data from the contributors.
Author Activity Data
-Rows represent individual authors (1626 total)
-Columns represent months starting in Jan 2010 (these are 0-padded before and after project)
-The actual author IDs can be found by cross-referencing output_author_ids_nobots.csv:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/output_authors_ids_nobots.csv
-Number of commits per month:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/output_commits_nobots.csv
-Number of active days per month:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/output_activity_nobots.csv
##Survey Response Data
This represents voluntary responses to a survey in which 131 individuals responded.
Survey questions are as follows:

Selection: On average, how many hours in a week have you spent in the project in the last six months?
(>40h, 40h, 30h, 20h, 10h, <5h)

Selection: How much of the time you spent in the project is devoted to coding?
(>95%, approx. 75%, approx. 50%, approx. 25%, <10%)

Selection: Do you make at least one commit to the repository the days you code?
(yes, no)

Selection: What do you consider yourself in the project?
(full-time, part-time, occasional contributor)

Free-text box: Did you always work on the project the same amount of hours, or did you have different phases of commitment? If you had different phases, could you tell us about the various phases? (the graph below may help you, as it is based in your recorded activity in the repository)

The survey data has 4 columns which reflect questions 1-4 and two additional columns labeled "info" and "survey" of which I can't seem to find a description.
The original (anonymized) survey response data is here:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/answers_openstack.all.public.csv
This survey data was cleaned with a few respondents being removed and some responses being edited. A description of the cleaning process as well as the cleaned response data is here:
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/survey_cleaning.txt
http://gsyc.urjc.es/~grex/repro/2014-msr-effort/answers_openstack.public.csv

Added as openeffort
http://openscience.us/repo/effort/other-effort/openeffort.html


SPICE Guidance (NRHO)

Hi @astrojuanlu, Everyone,
I was looking to see how I would use the poliastro SPICE interface to propagate a Near-Rectilinear Halo Orbit (NRHO) at southern L2 for Lunar Gateway. Essentially, I want to use this tool rather than GMAT for analysis.
Does someone know how to do this? Would be a good example!
Best, Chris
Edit: Force and prop model info: https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20190030294.pdf

Hi @cpbridges, thanks for your interest in poliastro!
What a coincidence, we started considering this just a few days ago #981 :)
At the moment, poliastro is focused on the 2 body problem, with some small utilities regarding the circular restricted 3 body problem (spheres of influence, Lagrange points). I see in the NASA white paper that you share that "the force model used in propagating the reference trajectory used only n-body gravitation.". In poliastro we don't have an n-body propagator, so this is something we will have to deal with in the long term.
Also, we have a very narrow SPICE interface, only to load ephemerides files using https://pypi.org/project/jplephem/. So if you want to clarify a little bit what you had in mind, we can discuss this topic a bit more!

I had a feeling this was the case. So - in GMAT or Matlab in fact, there are 1) pretty decent SPICE interfaces to pull in various astronomical / gravitational systems - and 2) they allow n-bodies to be added to models (like you say).
The NAIF models are all here: https://naif.jpl.nasa.gov/pub/naif/generic_kernels/
Tutorials: https://naif.jpl.nasa.gov/naif/tutorials.html
For python, I would start here: https://spiceypy.readthedocs.io/en/master/basics.html
This would be one place to start.

Is there some reason you're using jplephem instead of spiceypy currently?
And is there an issue open somewhere for an n-body propagator?

Hi @autumnsault, sorry for the long delay! To add a bit on what @jorgepiloto answered on the mailing list, there are two reasons why we use jplephem in poliastro:

because it's a transitive dependency of Astropy:

https://docs.astropy.org/en/stable/coordinates/solarsystem.html#solar-system-ephemerides

despite having helped making the conda recipes of spiceypy, I have only used SPICE for very basic stuff (in other words: historical reasons).

On the other hand, adding an n-body propagator would be a significant change in scope in poliastro, but with the adequate amount of resources, it could be done. Notice that there are other open source, modern n-body propagators out there, although GPL-3.0 licensed:
https://github.com/hannorein/rebound


"no-cycle" affecting type resolution between monorepo packages

Problem: I get additional errors from @typescript-eslint/require-await and @typescript-eslint/restrict-plus-operands after activating import/no-cycle.
Out of these "extra" errors, some seem legit:

a.b + c // a can actually be undefined here so "restrict-plus-operands" makes sense

...while in other cases, TS normally infers the number type but now suddenly requires more explicit/direct types for variables.

performance.now() isn't accepted as a number when no-cycle is on.
useState(0) can normally inferred to be a number, but now needs <number>.
maybeUndefined?.myNumber ?? 0 is no longer understood to be a number
etc.

It's as if using a much older version of typescript.
These errors also only appear when invoking eslint on multiple monorepo packages at once, with some files that import from the other package.
As for require-await, the following file with no imports only has an error when also running no-cycle:
export const sleep = async (delay: number) => {
 return new Promise<void>((resolve) => setTimeout(resolve, delay))
}
// "Async arrow function 'sleep' has no 'await' expression

Minimal setup to reproduce:
// .eslintrc.cjs
module.exports = {
 root: true,
 parser: '@typescript-eslint/parser',
 parserOptions: {
   allowAutomaticSingleRunInference: true,
   ecmaVersion: 2022,
   project: [
     './tsconfig.eslint.json',
     './common/tsconfig.json',
     './web/tsconfig.json',
   ],
   sourceType: 'module',
   tsconfigRootDir: __dirname,
 },
 plugins: ['@typescript-eslint', 'import'],
 extends: ['plugin:import/typescript'],
 rules: {
   '@typescript-eslint/require-await': 'error',
   '@typescript-eslint/restrict-plus-operands': 'error',
   'import/no-cycle': 'error',
 },
 settings: {
   react: { version: '17' },
   // required for differentiating between external/internal in rule 'import/order'
   'import/resolver': {
     typescript: {
       // The resolver needs to know where to find different node_modules,
       // otherwise it depends on which directory you are running eslint from.
       // The reason the other projects are in override settings is because there
       // seems to be a bug in the eslint-import-resolver-typescript package that
       // resolves all projects together (thereby importing from the wrong module)
       project: ['./tsconfig.eslint.json'],
     },
   },
 },
 overrides: [
   {
     files: ['common/**'],
     settings: {
       'import/resolver': {
         typescript: {
           project: ['./common/tsconfig.json'],
         },
       },
     },
   },
   {
     files: ['web/**'],
     env: {
       browser: true,
     },
     settings: {
       'import/resolver': {
         typescript: {
           project: ['./web/tsconfig.json'],
         },
       },
     },
   },
 ],
}

The tsconfig.json in each package:
{
  "extends": "../tsconfig.base.json",
  "compilerOptions": {
    "baseUrl": "src"
  },
  "include": ["src/**/*"],
}

Adding settings['import/resolver'].node.paths to match the baseUrl changes the number of errors a little bit.

Setting aside that "require-await" is a harmful rule that should never be enabled, I can't conceive of why one rule being enabled would possibly impact a different one - especially in another plugin. eslint actively prevents rules from affecting each other.
Which version of the TS eslint resolver are you using?

Right, those rules don't seem that great, I'll probably remove both.
But they revealed that there are unknown & unexplained interactions in my linting which is pretty uncomfortable. :-)
Sorry forgot to include:
typescript: 4.7.4
eslint: 8.19.0
eslint-plugin-import: 2.26.0
eslint-import-typescript-resolver: 3.2.5
@typescript-eslint/{parser,eslint-plugin}: 5.30.5
The reason that I added the TS resolver was to use import/order and differentiate between external packages resolved from node_modules, and internal packages that are absolute imports from ./src.

Right, that all makes sense.
cc @bradzacher - any hints as to why one rule would impact another?

I'd need a concrete reproduction case. @toerndev can you create an isolated GH repo with the minimal setup required to repro this issue?

@ljharb separate and unrelated to the issue, just as an FYI.
the ts-eslint version is smarter than the base rule as it allows returning promises (it's type-aware). It's poorly named because it builds on top of the base rule.

@bradzacher that's helpful, but it's perfectly find to have an async function that does not return a promise and does not use await, and it's massively harmful to even imply otherwise. The rule should never have existed in eslint (i totally understand why it therefore exists in TS-eslint, ofc)

Fix: https://github.com/typescript-eslint/typescript-eslint/pull/5893

FYI - the fix has been released in v5.42.0 of the @typescript-eslint tooling.
So this issue can now be closed!


Support TVH_HTTP_ROOT path

My tvheadend is proxied through a https nginx box. As part of this setup, I use the /tv/ identifier in the URL which is set as the TVH_HTTP_ROOT in the Tvheadend configuration defaults (running Debian jessie).
The plugin for plex errors as it must assume the path is /, where it infact needs to have a base of /tv. If I put /tv on the port it works (config included below).

A new field to specify the TVH_HTTP_ROOT should be added to accommodate for this field (defaulting to /), or otherwise could utilise the htsp "hello" to retrieve the web root.

I'll take of this within one of the next versions

Added within latest commit


Fix bug for windows and improve sample code

Why are these changes needed?

Fix bug for windows
Better example

Related issue number
close #17
close #19
Checks

[x] I've included any doc changes needed for https://microsoft.github.io/autogen/. See https://microsoft.github.io/autogen/docs/Contribute#documentation to build and test documentation locally.
[x] I've added tests (if relevant) corresponding to the changes introduced in this PR.
[ ] I've made sure all auto checks have passed.

Codecov Report

Merging #38 (cb25865) into main (d3d5dca) will decrease coverage by 0.23%.
The diff coverage is 25.00%.

@@            Coverage Diff             @@
##             main      #38      +/-   ##
==========================================
- Coverage   35.16%   34.94%   -0.23%
==========================================
  Files          17       17
  Lines        1965     1969       +4
  Branches      432      434       +2
==========================================
- Hits          691      688       -3
- Misses       1223     1228       +5
- Partials       51       53       +2

Flag
Coverage Δ

unittests
34.94% <25.00%> (-0.18%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files
Coverage Δ

autogen/agentchat/assistant_agent.py
83.33% <ø> (ø)

autogen/version.py
100.00% <100.00%> (ø)

autogen/code_utils.py
43.31% <14.28%> (-2.23%)
:arrow_down:

I followed the installation steps in the win branch (pip install pyautogen), then modified and renamed OAI_CONFIG_LIST_sample.json as suggested, and ran the new test (python test/twoagent.py). The first agent turn replied with code as expected. I pressed enter to use auto-reply, and got the error mentioned in issue #17 :
pywintypes.error: (2, 'CreateFile', 'The system cannot find the file specified.')
Then I did pip install docker and ran the test again. The error changed:
docker.errors.DockerException: Error while fetching server API version: (2, 'CreateFile', 'The system cannot find the file specified.')

I followed the installation steps in the win branch (pip install pyautogen), then modified and renamed OAI_CONFIG_LIST_sample.json as suggested, and ran the new test (python test/twoagent.py). The first agent turn replied with code as expected. I pressed enter to use auto-reply, and got the error mentioned in issue #17 :
pywintypes.error: (2, 'CreateFile', 'The system cannot find the file specified.')
Then I did pip install docker and ran the test again. The error changed:
docker.errors.DockerException: Error while fetching server API version: (2, 'CreateFile', 'The system cannot find the file specified.')

Could you use pip install -e. instead of pip install pyautogen?

I followed the installation steps in the win branch (pip install pyautogen), then modified and renamed OAI_CONFIG_LIST_sample.json as suggested, and ran the new test (python test/twoagent.py). The first agent turn replied with code as expected. I pressed enter to use auto-reply, and got the error mentioned in issue #17 :
pywintypes.error: (2, 'CreateFile', 'The system cannot find the file specified.')
Then I did pip install docker and ran the test again. The error changed:
docker.errors.DockerException: Error while fetching server API version: (2, 'CreateFile', 'The system cannot find the file specified.')

Could you use pip install -e. instead of pip install pyautogen?

This worked, and after enough turns (test1.txt) it displayed the chart:


Support configuring credential timeouts separately from client timeouts

See https://github.com/awslabs/aws-sdk-rust/discussions/681 for the use-case. It should be more obvious how to configure credential timeouts separately from client timeouts.

To sum up, the biggest issue here is that setting operation_timeout (or operation_attempt_timeout) on a DynamoDB client also acts on credential timeouts.
    let sdk_config = aws_config::load_from_env().await;

    let dynamodb_get_item_client = aws_sdk_dynamodb::Client::from_conf(
        aws_sdk_dynamodb::config::Builder::from(&sdk_config)
            .retry_config(aws_config::retry::RetryConfig::disabled())
            .timeout_config(
                aws_config::timeout::TimeoutConfig::builder()
                    .operation_timeout(Duration::from_millis(50)) // <-- 50ms is enough for a DynamoDB query but not for the "lazy_load_credentials" span
                    .build(),
            )
            .build(),
    );

Something that would probably be acceptable for the user experience of the SDK, would be to load credentials in another thread (not the main one) every ~15min (the DEFAULT_CREDENTIALS_EXPIRATION value)... so that users can still take advantage of operation_timeout and operation_attempt_timeout without being affect by credentials loading process... Thought it may lead to other issues related to multithreading, such as deadlocks and stuff, but it seems possible to achieve IMO.

👋 @jdisanti Does this discussion about a new SDK feature resolve this issue?
Or is the operation_timeout still wrapping the identity cache?

The operation timeout still wraps identity resolution in the latest release, and given the architecture, I don't think we're going to be able to separate this out. I'm thinking what we need to do to solve your problem is add an eager credentials cache that uses a background task to continually refresh credentials before they expire so that that refresh happens in a separate thread, and thus, doesn't impact your requests at all.
Unfortunately, we won't be able to get to this quickly, but you can unblock yourself by providing a custom caching implementation via the ResolveCachedIdentity trait, and passing your implementation into the identity_cache() config method. The existing lazy cache can be used as an example.

Thank you very much for this clear answer :)
Now what about connect_timeout and timeout functions instead of operation_timeout?
Do they also impact the identity cache loading process or could we set them to a very low value (such as 5 ms) and still be able to load AWS credentials without timeout issues?

If I understand your problem correctly, I think you should be able to set both the connect and read timeouts without any issue. The identity resolution gets included in the operation timeout and operation attempt timeout, but not in the connect/read timeouts.
I think that if you set the connect/read timeouts as part of the SdkConfig, then they will also be applied to the HTTP client that the credentials provider uses, but it sounds like that won't be an issue for you.

then they will also be applied to the HTTP client that the credentials provider uses, but it sounds like that won't be an issue for you

Since the identity cache loading takes around ~200ms and a simple DynamoDB query operation takes around ~5ms, we want to know if we can set the connect/read timeouts, as part of the SdkConfig, to something close to our DynamoDB operations (such as 50ms) without compromising the identity cache loading.
And if I understood correctly what you said, it sounds like we can't do that.

The connect/read timeouts occur at the HTTP client/connector level, so they don't include the identity resolution time. You should be able to safely set them that low. Just note that they will apply to any HTTP operations made inside of that identity resolver if you're using the default credentials chain. But it's only for the HTTP connect/read time, and not for the entire operation.

I found this issue while trying to figure out how to increase the default five second timeout for invoking the credentials process.
At best, the credentials process I use, saml2aws, takes about ten seconds, at worst, saml2aws does a two factor handshake with a human and I want to allow my humans a long time to respond.
What is working for me is this:
use aws_config::{identity::IdentityCache, BehaviorVersion, SdkConfig};

    let base = aws_config::defaults(BehaviorVersion::latest()).identity_cache(
        IdentityCache::lazy()
            .load_timeout(Duration::from_secs(90))
            .build(),
    );

I am not aware of this having any unfortunate side effects, but I don't know what side effects to look for 🤷🏻.

Just wanted to chime in here that I was having a similar problem to @bruceadams, his solution is working for me as well (thanks!)
I wonder if it might be reasonable to treat credential_process resolvers differently from other credential providers? i.e. if the user has a credential_process is configured, default to a longer timeout (perhaps 60 seconds) when invoking the process? It seems pretty likely that process credential providers are often used for human-in-the-loop type flows, for which of course you would want a longer timeout.
Maybe another option would be to allow specifying the timeout in the same place that the process credential provider is initially configured, e.g. in ~/.aws/config or wherever. But that would be a much broader change, since all of the AWS SDKs would have to support it, so I don't know.


Fix bug where a numeric id would cause a failure

Motivation
This is so that later in the parsing when include is used on an expected string value of metadata.id and fails because of type mismatch.
Have you read the Contributing Guidelines on pull requests?
yes

this is closed in favor of  #1268


Auto-toggle Primary Checkboxes

Unchecking all the mode section's checkboxes turns on all the mode's data on the map. It should turn off the mode's map data and turn off the main, primary checkbox at the top.

The UX starts to get funky once you start treating the primary checkbox as a select all/unselect all. For example, if you turn off all of the project types for a specific mode and its primary checkbox is automatically unchecked, what would you expect to happen when the user toggles the primary checkbox back on? Turn on all of the project type checkboxes? Then what about when you toggle it off?
I would argue that it's best to keep it as is. The primary checkbox toggles the disabled state of the secondary ones.
But, of course, I'm open to other ideas and you guys are the ones that make the final decision.

Bert and I talked through this one. We agree - let's keep the various filter checkboxes the way they currently select all/unselect all as-is.


Removing all keychain items when keychain is empty

I am trying to remove all keychain items from my app. Although, the code fails when the keychain is already empty.
Tried both keychain.remove() by looping over all keys, and also tried keychain.removeAll(), yet both failed with the same error.
Please see the StackOverflow question I posted that could not be solved.
http://stackoverflow.com/questions/36993530/using-keychainaccess-to-remove-all-items

Continue to discuss in StackOverflow http://stackoverflow.com/questions/36993530/using-keychainaccess-to-remove-all-items


How can I change the language of the MatisseActivity?

I can see there are string values translated in many locales, but how can I change the language when I use it? Is there a method for this?

matisse language depends on mobile system language


Options in Japanese. Need them in English in Blender

I'm trying to create an avatar for VRChat, and the options for the eyes are in Japanese. I've tried installing gettext so I could translate it through Blender, but I can't seem to figure that out. Is there anyway for me to translate these otions into English, or at least a table so I can see which option I'm actually trying to pick?

In Cats under Model Options there is a translate feature. Just press the Translate All button

In Cats under Model Options there is a translate feature. Just press the Translate All button


Concern about the semantic versioning

Recently Google Play Services dependency has been updated from 8.4.0 to 9.4.0. #533
I'm concerned about the semantic versioning of this library, since this change has been versioning as a patch : 0.8.0 -> 0.8.1.
My npm package ("react-native-maps": "~0.8.0") will install react-native-maps 0.8.*, so I expect that only bug fixes will be applied.
I know it's not a big deal for someone who only uses this library without others gms dependencies, but in my case we unfortunately rely on a library that doesn't support the latest version of gms. So begin the unexpected nightmare with transitive dependencies and gradle.
It could easily fixed with the exclude below, but my point was, should we published gms updates as minor rather than patch next time since it can cause some breaking changes with project? Any thoughts?
compile(project(':react-native-maps')) {
    exclude group: 'com.google.android.gms'
}

@charpeni those are good points and yes, we should be more careful about how transitive dependencies affect this librarie's own semver. I'll close this one, but we'll do our due diligence for future releases. Thanks!