why "NextHour2" in path

I don't understand the meaning of  "NextHours2" in the data-path "daswetter.0.NextHours2.Location_1.Day_N".  I use the new datastructer and I think, a data path like "daswetter>..Location_<#>.xxx is more plausible.

DasWetter delivers three different version of data (see Metadata_de.pdf). The adapter just parses all three versions and provide the data to be used by users. So every user is free to use only one path or a combination of more then one. If I would merge some data than other users would miss exactly that...


Fix memory leak and time zone dependent test.

Thanks, looks good! But maybe it would be better to place the iso8601Date method as a function in the Utilities.swift?

I moved the iso8601Date function to the utilities and took out the dependency updates. The CocoaPods dependencies need updating as well.

Fantastic :+1:


deps: upgrade dependencies with pip-compile

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-8.5%) to 87.198%

Totals

Change from base Build<PHONE_NUMBER>:
-8.5%

Covered Lines:
1301

Relevant Lines:
1492

💛  - Coveralls


Style/MethodCallWithArgsParentheses within the block of a macro

When using the Style/MethodCallWithArgsParentheses cop, it does not apply to the block of a macro. Due to this, rails tests written in the test "name" do format instead of def test_name format will not enforce the parentheses around the assertion method calls.

Expected behavior
Given this test:
# frozen_string_literal: true

require "test_helper"

class FooBarTest < ActiveSupport::TestCase
  test "block" do
    assert_equal "foo", "bar"
  end
end

I would expect Rubocop to enforce and autocorrect to add parentheses around the arguments of assert_equals.
Actual behavior
Rubocop does not return or autocorrect the parentheses.
Steps to reproduce the problem
Given this full example you will be able to see the difference of assert_equal not being autocorrected in one format of test versus the other:
# frozen_string_literal: true

require "test_helper"

class FooBarTest < ActiveSupport::TestCase
  def test_method
    assert_equal "foo", "bar"
  end

  test "block" do
    assert_equal "foo", "bar"
  end
end

RuboCop version
1.25.0 (using Parser <IP_ADDRESS>, rubocop-ast 1.15.1, running on ruby 3.1.0 arm64-darwin21)
  - rubocop-minitest 0.17.0
  - rubocop-performance 1.13.2
  - rubocop-rails 2.13.2
  - rubocop-sorbet 0.6.3

If there is reason to preserve this behaviour it would be nice to have a configurable option to not have it behave this way.

I don't know if this will solve the problem, I found an option IncludedMacros.
# rubocop.yml

Style/MethodCallWithArgsParentheses:
  Enabled: true
  IncludedMacros: ['assert_equal']

If specify macro names to the option, autocorrect will add parentheses as follows:
# frozen_string_literal: true

require 'test_helper'

class FooBarTest < ActiveSupport::TestCase
  def test_method
    assert_equal('foo', 'bar')
  end

  test 'block' do
    assert_equal('foo', 'bar')
  end
end

That said, it might be easier if there is an option to force parentheses on every call.

The cop already has AllowedPatterns so adding this to your config should solve your issue:
Style/MethodCallWithArgsParentheses:
  AllowedPatterns:
  - '^assert'
  - '^refute'

I think AllowedPatterns does not solve the problem. Since AllowedPattern is an option that allows patterns that do not conform to cop, so the behavior on EnforcedStyle: require_parentheses would be the opposite.
Running rubocop -a with the previous configuration:
Style/MethodCallWithArgsParentheses:
  Enabled: true
  AllowedPatterns:
  - '^assert'
  - '^refute'

# frozen_string_literal: true

require 'test_helper'

class FooBarTest < ActiveSupport::TestCase
  def test_method
    assert_equal 'foo', 'bar'
    another_method 'baz', 'quux'
  end

  test 'block' do
    assert_equal 'foo', 'bar'
  end
end

is corrected to:
# frozen_string_literal: true

require 'test_helper'

class FooBarTest < ActiveSupport::TestCase
  def test_method
    assert_equal 'foo', 'bar'     # should be parenthesized, but didn't
    another_method('baz', 'quux') # parenthesized
  end

  test 'block' do
    assert_equal 'foo', 'bar'
  end
end

A new option like ForceEligiblePatterns is needed for this case IMO.

Strangely, this cop works for omit_parentheses within a block but not for require_parentheses. I'll take a look at it.

So the issue here for require_parentheses is the IgnoreMacros configuration. The methods inside the block are considered macros and with IgnoreMacros the parens aren't being required. I'm not really sure yet how we can fix this without breaking cases that other people are expecting.

The methods inside the block are considered macros and with IgnoreMacros

This feels weird though with the difference being whether or not they are inside of a block.
I would expect the same corrections to happen regardless of whether I used def test_ or test "" do

I would expect the same corrections to happen regardless of whether I used def test_ or test "" do

I understand that but at the same time a receiver-less method call within a block is explicitly treated as a macro everywhere by RuboCop. This is the same pattern:
Rails.application.routes.draw do
  get :foo
end

@bbatsov what do you think we should do here?


Return schema_name & document_type for bulk read

schema_name & document_type are replacing format.

LGTM, the spec is failing though


add types

Added types to use them within the project.
Could also be cool to release the types only, as an npm package.

Thanks for this PR! Since this API simply gets injected into the browser context, types are not preserved. It would make more sense to have these types in a library, like you say as NPM package for example, which you can use then for your dApp.
I'm also changing the API soon a little bit.


fixes location of corebluetooth framework for catalina

Thank you for creating a pull request to contribute to Adafruit's GitHub code!
Before you open the request please review the following guidelines and tips to
help it be more easily integrated:

Describe the scope of your change--i.e. what the change does and what parts
of the code were modified.  This will help us understand any risks of integrating
the code.

Describe any known limitations with your change.  For example if the change
doesn't apply to a supported platform of the library please mention it.

Please run any tests or examples that can exercise your modified code.  We
strive to not break users of the code and running tests/examples helps with this
process.

Thank you again for contributing!  We will try to test and integrate the change
as soon as we can, but be aware we have many GitHub repositories to manage and
can't immediately respond to every request.  There is no need to bump or check in
on a pull request (it will clutter the discussion of the request).
Also don't be worried if the request is closed or not integrated--sometimes the
priorities of Adafruit's GitHub code (education, ease of use) might not match the
priorities of the pull request.  Don't fret, the open source community thrives on
forks and GitHub makes it easy to keep your changes in a forked repo.
After reviewing the guidelines above you can delete this text from the pull request.

This library has been deprecated. Please update to use this new library:
https://github.com/adafruit/Adafruit_Blinka_bleio
PR's can be submitted to the new library.


We are setting the login parser before we know the rets version

The rets version is told through the response headers, but we are parsing the response headers with the 1.5 parser. We should set the login parser after we know the rets version.

Not applicable anymore.


Generating atac.h5ad

Hello,
Can you add a tutorial on how to generate pancreas_multiome_2022_processed_atac.h5ad to the existing tutorial 'Mouse Pancreatic Endocrinogenesis (scATAC-seq) | Training with an RNA-Dynamics kNN-Graph'?

The general workflow requires (i) a scATAC-seq file in AnnData format, processed from CellRanger or another, and (ii) a graph representation for dynamics, which is generated from the  velocity_graph using scVelo. Instructions for the latter are here.
https://scvelo.readthedocs.io/en/stable/getting_started.html
I need more instructions for this request. How early would you imagine a tutorial should be, or (i)/(ii) and both? I marked this as documentation. In case of another crucial step unclear, let us know.
Thank you!

I see. For (ii), we cannot re-document here as priority, and this is covered in other scverse packages. Please check the sc-best practices book, and/or AnnData/scanpy/muon tutorials for this. Attaching one link as first referral. Potentially, open an issue in those if the provided docs are not covering your files format. For muBind-related issues after creating preparing such AnnData objects, let us know here. Thank you.
https://www.sc-best-practices.org/chromatin_accessibility/quality_control.html


[1.18-Forge] Crash when attempting to boot game.

Title^
MC: 1.18
Forge: 38.0.12
Mod: 0.1.1
Logs:
https://gist.github.com/Gbergz/069f9bf7c39061cfd10470480c9f9439
- Gbergz

Woops, pushed  wrong mixin reference.
Fixed in latest release.


routing by packet lookup

This PR changes the way packets get their routing determined, for the purpose of having more freedom in how we store SessionKey Filters.
The when of packets
The first time a packet is see, we take a lock on the phash and start finding if it's routable.
Any packets that come in during that time will queue themselves.
Once the routing is figured out, the initial packet, and all the queued packets are routed, and the routing information is put into ETS.
Any packet coming along after routing has been determined will immediately retrieve it's routes.
Multi-buy is always checked.
But there's a lot of changes to SKF storage...
The last_used timestamp for an SKF is removed. Worst case scenario is the applicable SKF is at the end of an ETS table, but that lookup is only done one time per hash.
This means we can keep SKF unique by session_key, and delete in constant time.
Other things of note

We no longer assume that if 2 routes have a valid SKF, the latest one wins. Now, both routes will be routed to.
There's a cleanup job for phash routing. I based it loosely off of packet-purchaser unique packet hash counter.

It crawls the table more often than the removal window to keep the table from getting bigger than can be traversed in a single window.
packet-purchaser was doing this while being a default router.

There as a multi-buy test that was relying on a race condition.

There was a max_copies of 3, and we were simulating 2 servers for every request. The test asserted that 3 requests were sent, but that could only happen if request 2 and 3 were sent at the same time.
It's been updated to wait until multi-buy has received more than max_copies worth of function calls, and makes sure it's sent less than the expected requests.

The current largest DevAddr used has ~13.5k Session Key Filters.
Providing a packet that will never match any of the SKFs. (running with a single core locally).

Number of SKfs
Worst case time

100
4ms

1,000
27ms

10,000
217ms

20,000
431ms

50,000
1027 ms

100,000
2048ms


requirements.txt and LICENSE files missing in the source distribution on PyPI

The source distribution of this package on PyPI does not include the LICENSE and requirements.txt files. It would be great to add them in the next release.

@rstojnic @RJT1990 @datumbox Can you create a tag release on GitHub so that conda-forge can pull the source code from GitHub? The PyPI missed the requirements.txt and LICENSE files

I am trying to add model-index to conda-forge.
https://github.com/conda-forge/staged-recipes/pull/21737

It seems that this issue is not resolved yet. And there is no tag in github repo.


String based IO initialization for MRAA

Not very sure about the C++ part. It would probably be best to enclose calls over elements from the STL vectors with existing MRAA  C++ API calls. Will work on this asap.

@mihaitghstefanescu, I see you've added some commits, but the tests are still failing, is this ready for review?

Please guide me through the mock platform compatible pins I/O pins in order to successfully run our tests(which are commented at the current moment). I had some issues with them using the mock platform on Intel Joule. Thanks.

Here are the resources mraa knows about with a mock platform build:
mraa-gpio list
00       GPIO0: GPIO
01        ADC0: AIO
02     I2C0SDA: I2C
03     I2C0SCL: I2C
04      SPI0CS: SPI
05    SPI0MOSI: SPI
06    SPI0MISO: SPI
07    SPI0SCLK: SPI
08     UART0RX: UART
09     UART0TX: UART

@mihaitghstefanescu, try adding
-DBUILDARCH=MOCK
to your cmake command.

@mihaitghstefanescu, looking good so for.
Can we get this rebased onto master?
Also, it may help to squash some of these commits into logical groups.

Ok, LGTM now with a small nitpick on comment spacing in initio_keys.h (see comment above). Provided that's fixed, I'm good with merging.

Oh, and assuming the test failures I see in Travis are fixed too, naturally.

Nice work @mihaitghstefanescu!  Merged.


Tournament Screen Navigation

This PR simply adds a navigation section to the list of tournaments screen (which is empty for now) and adds the functions' and classes' initial declarations for the view and view-model of this screen.

@Fouad-sys can we close this PR ?


Allow changing video resolution at runtime + more

NOTE: Only tested on Windows 10. I don't have access to other OSes, but hopefully it behaves the same way on them via SDL.
New config option: Video.CenterWindow
I must admit that a centered window at native resolution, but not in fullscreen, results in what looks very much like fullscreen, at least on Windows 10. The taskbar disappears and everything. I don't really like that behavior and it feels misleading when Alt+Enter appears to do "nothing". I wonder how it behaves on other OSes?
Implementation
I took the liberty to rearrange the more frequently-accessed / sought-after video options to the top of the list. Since video display modes vary per device, during videoInit(), I create a heap-allocated array of unique resolutions for every video mode, which are later cycled through in a dropdown menu. I made sure to free it at exit, even though that doesn't really matter too much. Since the window can be arbitrarily resized, I made sure to accommodate for that with the special "Custom" resolution, which basically just means that the current window resolution doesn't match any of the known resolutions in the array.
Variables which store the state of fullscreen, fullscreen-exclusive, resolution, and maximize are now synchronized with the state of the window. They will be written to the ini as modified at runtime. I feel like they are more intuitive this way. For instance, if I change the resolution in-game, I'd like the resolution to be the same after I exit and launch the game again, rather than the ini being the sole place where modification is allowed. I should note that custom resolutions aren't written to the ini. Whatever the last known (as in, belonging to the array) resolution was is what will be written, in that case.
Caveats
Since it leverages the existing system in place for resizing the window, it carries the same caveats, though only one is really obvious: the blur framebuffer is blanked if the resolution changes vertically. Horizontal changes result in warping of that buffer. Cycling the pause menu on and off will take a new screenshot and restore the blur buffer. A warped blur buffer can only be fixed by blanking the blur buffer with a vertical resolution change, followed by pause menu cycling.
I was thinking of a more elegant solution to this problem, which would probably involve pushing a special menu mode for resolution changes, which, in reality, would not render any menu but instead show a clean view of the background for a screenshot to be taken, then reapply the blur buffer and pop said menu. I imagine the same solution can be used for arbitrary resizes (like dragging the window) while the pause menu is open.
Future Work
I have aspirations to make the rest of the ini-exclusive video options runtime-modifiable, in a way that is user-friendly. I'll have to think about how best to abstract the framerate-related options, since they're a bit technical as is. Having the ability to toggle the current FPS in-game would be nice, too.
As always, if you want me to change something, let me know.

There are some reasons why I haven't exposed the framerate cap in the options.  This necessitates some sort of unified option that sets both the divisor and the framerate limit, but that can also be difficult to get right (e.g. what should happen when vsync is on?).
High FPS modes are still buggy and I'd actually not recommend playing the game at over 120 FPS.

As for the PR itself, you should probably avoid exposing Fast3D headers to the game code where possible. This can be achieved by providing thin wrappers for mode listing, e.g.:
video.h
typedef struct {
	s32 width;
	s32 height;
} videomode;

s32 videoGetNumVideoModes(void);
s32 videoGetVideoMode(videomode *out, const s32 index);

video.c
s32 videoGetNumVideoModes(void)
{
	return wmAPI->get_num_video_modes();
}

s32 videoGetVideoMode(videomode *out, const s32 index)
{
	return wmAPI->get_video_mode(index, &out->width, &out->height);
}

gfx_sdl2.cpp
int gfx_sdl_get_num_video_modes(void) {
    return SDL_GetNumDisplayModes(0);
}

int gfx_sdl_get_video_mode(int modenum, int *out_w, int *out_h) {
    SDL_DisplayMode sdlmode;
    if (SDL_GetDisplayMode(0, modenum, &sdlmode)) {
        *out_w = sdlmode.w;
        *out_h = sdlmode.h;
        return 1;
    }
    return 0;
}

There's no need to allocate memory for them either. Well, maybe if you want to cache them in video.c, but that shouldn't be necessary.

It seems the framerate options are more involved than I had originally thought. Thank you both for your insights. I'll have more to say about that later, but, at the moment, I'm pretty exhausted.
Hmm... I can't just use the raw output of SDL_GetDisplayMode() in conjunction with SDL_GetNumDisplayModes(), since that results in "duplicates", or really, modes with different refresh rates but the same resolutions. That gfx_modes.h file was one that I added because I needed to expose the struct within it to both the Fast3D code and the game code. Although, now that I think about it, did it even need to be a struct at all? It really behaves like an array of char arrays of size 10. Hmm... well, this is a bit embarrassing. Anyway, that should be an easy change and then I don't need gfx_modes.h at all.
The modes array is formatted like so:
{"Custom", "3840x2160", "2560x1600", "2560x1440", "2048x1536", ...}

I could alternatively use a fixed-size array, but, I don't want to end up causing someone with, like, 50 unique display modes to not have them all be available. Also, when it comes to selecting the resolution from the dropdown menu, do the strings really not need to be cached?

Okay, I see. This solves the gfx_modes.h issue entirely. That is what the issue is about and I'm not just obsessing over gfx_modes.h like a crazed individual, I hope? 😂 About the conversion: doesn't that have to happen at some point, regardless? Or maybe I'm missing something? But I like your solution more overall. It's much cleaner, anyway. I'll take a closer look tomorrow.

About the conversion: doesn't that have to happen at some point, regardless?
You only need to convert them to string when actually displaying them in the menu, because everywhere else in the code will just need the number. It just makes it easier and makes more sense to me, as you don't have to sscanf()/strol() shit just to get the actual width and height. Not to mention it stores less data.

That is what the issue is about and I'm not just obsessing over gfx_modes.h like a crazed individual, I hope?
I just want Fast3D to remain as encapsulated as possible because it is cleaner this way and theoretically makes changing renderers less painful. It makes more sense to me when the actual display mode retrieval is on the backend (gfx_sdl2), while video.c deals with filtering/sorting/giving them to the user.

Okay, after implementing, for the most part, what you sent me, debugging and testing everything again to make sure things are still working correctly, evicting the string cache and its accomplice, strtol(), and making sure things are encapsulated as they should be, we are back to, basically — where we started. I've made some changes, too, like that gfx_sdl2.cpp wrapper you provided not accounting for the fact that SDL returns 0 as successful, among other things.
I opted to keep the "Custom" message for unknown video resolutions because I feel that it works better when considering that just inserting whatever the current video mode is into index 0 can result in a duplicate entry or down-right confusion when a smaller value is above a list of descending values. "Custom", on the other hand, looks special because it is special. But, admittedly, it can be another source of confusion if someone is expecting to be able to enter a custom resolution once selected.

the fact that SDL returns 0 as successful, among other things.

I opted to keep the "Custom" message for unknown video resolutions

Yes, I just provided the code as a janky example for how to manage the video mode list, this is all fine.
I think we don't have to actually add a way to enter a custom resolution from the menu because someone can just edit the INI for that. Most people will probably play in borderless fullscreen anyway.

I think we don't have to actually add a way to enter a custom resolution from the menu because someone can just edit the INI for that. Most people will probably play in borderless fullscreen anyway.

Yeah, I'm not planning on incorporating that functionality.

Okay, on the topic of framerate:
vidFramerateLimit affects the video backend's framerate whereas g_TickRateDiv affects game's tickrate (duh lol), or, in other words, the interval between actions in the game. The N64 version of the game always has g_TickRateDiv set to 1, or really, the variable it is an alias for, g_Vars.mininc60, so I imagine it is best to leave it at 1 whenever vidFramerateLimit doesn't exceed 60 or is not disabled (0). If vidFramerateLimit is anything else, then g_TickRateDiv needs to be 0, because otherwise, it would prevent the framerate from exceeding 60.
so, for example something like:
if (g_TickRateDiv < 2) {
    g_TickRateDiv = (vidFramerateLimit == 0 || vidFramerateLimit > 60) ? 0 : 1;
}

the g_TickRateDiv < 2 check is there in case someone wants to set TickRateDivisor to a specific value in the ini.
I imagine setting g_TickRateDiv to anything other than 1 causes gameplay differences, though, and, to be honest, I'm not convinced of the usefulness of setting g_TickRateDiv above 1, not to mention it's really too coarse to be useful as a general frame limiter for the video menu. I was reading elsewhere (https://github.com/fgsfdsfgs/perfect_dark/issues/343#issuecomment-2058523253) that there are goals to interpolate framerates above 60, in order to prevent bugs. And, once that is implemented, would it actually be better to just leave g_TickRateDiv at 1 always?
One thing I don't like, at the moment, is that setting either vidFramerateLimit too low or g_TickRateDiv too high results in audio buffer underruns and input drops. I'm not sure it's possible to emulate the slower framerate of the N64 version without these issues presenting themselves, as things currently are.
Oh, and about vsync: vsync is king. If it's enabled, then vidFramerateLimit and g_TickRateDiv are overridden. However, it's important to note that not everyone has a monitor that refreshes at 60Hz. Btw, I read in the Wiki that vsync set "2+ - sync every N frames." Is this actually true? I looked at the code and didn't see it implemented that way. The backend SDL_GL_SetSwapInterval() makes no mention of it, either, in its documentation.
As for how I'd like things to be laid out in the video menu: I think it's best to just keep things simple. I was thinking of making the framerate option a slider, from 0 to, I suppose, 240. I'd disable the slider if vsync is enabled, just like I currently do for the resolution dropdown menu if vidFullscreen is enabled and vidFullscreenExclusive is 0 (aka borderless). For the time being, if vsync is disabled and someone attempts to set the framerate slider to 0, it will automatically be set to 240, just as things are currently implemented. That might seem peculiar to them, but I don't want to circumvent a feature that keeps the game, at least, playable.
So yeah. If I have a totally screwed up understanding of how this works, please let me know. 😂 I'm a bit skeptical of my own conclusion since it seems to contradict what has already been mentioned here about the framerate, particularly about g_TickRateDiv. Is all, really.

Yes, it would result in less bugs if everything above 60 FPS was interpolated like some other ports do. Arguably "true" high FPS is like what the port has right now is better since there's no interpolation delay, but it does result in more issues. For example, since the game uses a 240Hz timer, Combat Boost will start breaking at over 120 FPS since it slows down time 2x. So either we need to fix this somehow or fall back to interpolation, which has its own issues.
The reason you can set the tickrate divisor above 1 is "why not". Maybe you want to hard lock the game to 30FPS and see what happens.
Something like what you're suggesting can be implemented, but you need to figure out how it will interact with vsync.  If you rely on vidFramerateLimit, this will imply that the port will always cap framerate on the CPU side even if vsync is on, which might be undesirable, as the extra sleeping can result in shit frame pacing on some setups.
"Sync every N frames" is a somewhat confusing way to say "it will wait for N vblanks every SwapWindow call instead for 1 vblank". Meaning that if you set it to 2 and your display runs at 60Hz, the game will lock to 30FPS. If your monitor runs at 150Hz, the game will lock to 75FPS.
Both vidFramerateLimit and vsync stack on top of the already existing tickrate system. They don't care about each other, other than in the very specific case of "both vsync and tickrate divisor are set to 0", in which case the game will auto-cap to 240FPS using vidFramerateLimit. Vsync does not "override" the other caps, it just happens at the same time. This means that you can enable vsync on your 240Hz monitor and still cap the framerate to 60 if you so desire.
Proper frame pacing is a very difficult problem, at least when you don't have swap chains. Thus all the options you can screw with, so you could possibly find a solution even on the most weird-ass setup.

Good points on monitor refresh rates being inconsistent and difficult to deal with, especially the variable refresh ones. Not sure how to deal with that, at the moment. I'll think of something eventually, I suppose.

"Sync every N frames" is a somewhat confusing way to say "it will wait for N vblanks every SwapWindow call instead for 1 vblank". Meaning that if you set it to 2 and your display runs at 60Hz, the game will lock to 30FPS. If your monitor runs at 150Hz, the game will lock to 75FPS.

Oh yeah, I know what it means, but I was actually confused about how it was actually being implemented in the code. I couldn't find where it syncs every N frames.

Vsync does not "override" the other caps, it just happens at the same time.

For some reason, I thought they were mutually exclusive. After checking the code again, they indeed are not. There is a confusing comment about set_target_fps() being disabled because vsync is on, but, well, it's just a comment.

I was thinking about the layout of the Extended Video Options again and came up with this:
Full Screen			[ ]
Full Screen Mode		<Borderless|Exclusive>
Resolution			<Custom|3840x2160|1920x1080|...>
Maximize Window			[ ]
Center Window			[ ]
Remember Window Position	[ ]
HUD Centering			<None|4:3|Wide>
-------------------------
Vsync				<Off|Interval|Adaptive>
Vsync Interval			|1-----------10|
Framerate Limit			|0----------240|
Display FPS			[ ]
-------------------------
Anti-aliasing (MSAA)		<Off|2x|4x|8x|16x>
Texture Filtering		<Nearest|Bilinear|Three Point>
GUI Texture Filtering		[ ]
-------------------------
GE64-style Muzzle Flashes	[ ]
Explosion Shake			|0-----------20|
-------------------------
Allow HiDPI			[ ]
Framebuffer Effects		[ ]
Tickrate Divisor		|0-----------10|
-------------------------
Back

It is organized into five categories of descending "importance/popularity":

Window/Positioning Options
Framerate Options
Filtering Options
Miscellaneous Options
Advanced Options

[ ] denotes a checkbox.
< > denotes a dropmenu.
| | denotes a slider.
Remember Window Position and Display FPS aren't implemented yet. I added Tickrate Divisor to the advanced category so people can actually set it to something other than 0 or 1 if they really want to, but it's now managed under the hood if set to either 0 or 1. It is technically possible to eliminate Full Screen Mode and make Full Screen a dropdown menu with its respective options, but with Off prepended to it. However, I feel that this would hurt its usability, especially borderless fullscreen mode, which disables Resolution if Full Screen is enabled. It might not be as obvious to people that they need to switch the mode to something other than Borderless to access Resolution again, compared to seeing a separate Full Screen checkbox option. There are some additional reasons for keeping these separate options, pertaining to windowed mode, as well as the fact that they (vidFullscreen and vidFullscreenExclusive) are separate variables in the code. Vsync Interval is similarly disabled if Vsync is not set to Interval, but doesn't carry the caveats of Full Screen.
Another thing to note: this no longer fits on a single screen and needs to be scrolled. I wanted to try to keep it all visible without the need for scrolling. Oh well. At least most of the important options will be visible without scrolling. Alternatively, I suppose it would be possible to make it so the player needs to select from one of those five aforementioned categories first, but I don't want to do that since I feel like that would become a nuisance.
Oh yes, and I need to make sure that some of these options aren't available if the hardware doesn't support them.

I put Allow HiDPI in the Advanced category for a reason. Basically, anything under there shouldn't be tinkered with unless the player knows exactly what they're doing with those options. Of course, the concept of these categories is exactly that — just concepts. They aren't going to be called that in the actual game. So, hopefully, seeing Allow HiDPI next to Framebuffer Effects and Tickrate Divisor will keep the lay player away. But, idk.

Pretty sure changing HiDPI settings requires recreating the window because it's a window flag + hint, which we don't do. I'd leave it in the ini only.

After implementing and testing Vsync options, it's become apparent that my proposal is inadequate. Sliders can be disabled but don't have the appearance of a disabled menu item. Moving on. I'm currently looking at the MP Limits menu for inspiration. It seems one can add labels to specific slider values. Might be interesting...

Okay, I got Vsync and Framerate Limit implemented now. I decided to get rid of Vsync Interval. It was easier to just wrap everything into a single dropmenu item. There was an annoying issue implementing Framerate Limit, but I came up with what I think is a pretty good solution, detailed below:
I implemented a new menu item flag: MENUITEMFLAG_SLIDER_DEFERRED, which only calls the MENUOP_GETSLIDER callback on entering dimmed mode, storing its value for later ticks, and only calls the MENUOP_SET callback on leaving dimmed mode. This was necessary to prevent the framerate limit slider from immediately affecting the framerate, leading to an annoying slow down as the value was decremented to 0.
I imagine this feature could be useful for any other slider where one would want to defer its update.

This seemed too easy. Was there a reason this was being deferred until level load?
diff --git a/port/src/optionsmenu.c b/port/src/optionsmenu.c
index dfc12c97b..9e23290af 100644
--- a/port/src/optionsmenu.c
+++ b/port/src/optionsmenu.c
@@ -905,6 +905,7 @@ static MenuItemHandlerResult menuhandlerTexFilter2D(s32 operation, struct menuit
                return videoGetTextureFilter2D();
        case MENUOP_SET:
                videoSetTextureFilter2D(data->checkbox.value);
+               g_TexFilter2D = videoGetTextureFilter2D() ? G_TF_BILERP : G_TF_POINT;
                break;
        }

Updated the 1st post with new info.


EvalError blocked by CSP because 'unsafe-eval'

Hi,
I use pdfkit.standalone.js in to generate PDF files inside a Chrome extension.
Since today I was using 'unsafe-eval' in the CSP, but it's no longer possible with the migration from manifest v2 to v3
Removing 'unsafe-eval' for scripts leads to this error

Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self' 'wasm-unsafe-eval'".

it refer to code  if (this.options.relativeTo) {                   this.relativeToGetter = new Function('ctx', 'return ctx.' + this.options.relativeTo);               }
Is there a workaround or something I am missing to make it work without unsafe-eval ?
Thanks a lot

Git the same issue, any resolution?

I have the same problem and made a workaround which works for me but it is not thoroughly tested.
We use pdfkit.standalone.js in which I changed new Function calls as follows:
starting at line 65566
if (typeof this.type === 'string') {
    // this.versionGetter = new Function('parent', 'return parent.' + this.type);
    this.versionGetter = (parent) => {
        return this.type.split('.').reduce((obj, prop) => obj[prop], parent);
    };

    // this.versionSetter = new Function('parent', 'version', 'return parent.' + this.type + ' = version');
    this.versionSetter = (parent, version) => {
        const properties = this.type.split('.');
	let current = parent;

	for (const property of properties.slice(0, -1)) {
	    current = current[property];
	}

        current[properties[properties.length - 1]] = version;
     };
}

and 65197
if (this.options.relativeTo) {
    // this.relativeToGetter = new Function('ctx', 'return ctx.' + this.options.relativeTo);
    this.relativeToGetter = (ctx) => {
        return this.options.relativeTo.split('.').reduce((obj, prop) => obj[prop], ctx);
    };
}

Dependencies updated in latest version 0.16.0.


[BUG] OpenShift cluster seems to crash and gets unresponsive

General information

OS: CentOS 8
Hypervisor: KVM
Did you run crc setup before starting it (Yes/No)? yes

CRC version
crc version: 1.10.0+9025021
OpenShift version: 4.4.3 (embedded in binary)

CRC status
CRC VM:          Running
OpenShift:       Degraded
Disk Usage:      15.35GB of 32.72GB (Inside the CRC VM)
Cache Usage:     11.9GB
Cache Directory: /home/dan/.crc/cache

CRC config
generates no output

Host Operating System
NAME="CentOS Linux"
VERSION="8 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="8"

Steps to reproduce

crc start and wait until the cluster is up
oc login -u developer -p developer https://api.crc.testing:6443

Expected
Succesfully login into the cluster
Actual
oc login -u developer -p developer https://api.crc.testing:6443
error: EOF

oc login -u developer -p developer https://api.crc.testing:6443
Error from server (InternalError): Internal error occurred: unexpected response: 400

oc login -u developer -p developer https://api.crc.testing:6443
error: net/http: TLS handshake timeout

Sometimes it says TLS handshake error or timeout (504). I was able to login and deploy some stuff, but with or without a deployment or pods running the cluster keeps crashing and restarting all the time
Logs
https://gist.github.com/diggnsaegg/b943af93147999d267992630d9cc85ae
System
df -hT /home/
Filesystem                   Type  Size  Used Avail Use% Mounted on
/dev/mapper/cl_changeme-home xfs    94G   39G   56G  41% /home

free -mh
              total        used        free      shared  buff/cache   available
Mem:           15Gi        10Gi       166Mi        99Mi       5.0Gi       4.7Gi
Swap:         5.9Gi       248Mi       5.7Gi

As per your crc status --log-level debug I can see some of the operator are still reconcile state , how long you waited, does the crc status change to Running from degraded state.
time="2020-05-05T15:55:06+02:00" level=debug msg="authentication operator is still progressing, Reason: _OAuthServerDeploymentNotReady"
time="2020-05-05T15:55:06+02:00" level=debug msg="etcd operator is still progressing, Reason: NodeInstaller"
time="2020-05-05T15:55:06+02:00" level=debug msg="openshift-apiserver operator is degraded, Reason: APIServerDeployment_UnavailablePod"
time="2020-05-05T15:55:06+02:00" level=debug msg="openshift-apiserver operator not available, Reason: APIServerDeployment_NoAPIServerPod::APIServices_PreconditionNotReady"
time="2020-05-05T15:55:06+02:00" level=debug msg="openshift-controller-manager operator is still progressing, Reason: "
time="2020-05-05T15:55:06+02:00" level=debug msg="operator-lifecycle-manager-packageserver operator not available, Reason: "
time="2020-05-05T15:55:06+02:00" level=debug msg="operator-lifecycle-manager-packageserver operator is still progressing, Reason: "

I waited about 10 minutes, strange thing is that it worked like a charm and then it might be crashing somewhere, a pod or something. Right now it is working.

Now this happens after I just wanted to scale up a pod via browser:
{"error":"server_error","error_description":"The authorization server encountered an unexpected condition that prevented it from fulfilling the request.","state":"f23343a5"}
Also I am logged out of oc in my terminal and relogin ends up in unexpected response, error 400. So it seems a pod just crashed necessary for openshift I guess.

@diggnsaegg make sure if you are trying to deploy/develop some resource hungry applications then try to increase the memory and try again.
$ crc delete
$ crc config set memory 10240 <= sets 10Gb, you can set more if that needed.
$ crc start --log-level debug

I gave it 12 GiB RAM but it seems that the setup hangs right now at this point:
tail -f crc.log  time="2020-05-05T17:05:00+02:00" level=debug msg="authentication operator is still progressing, Reason: _OAuthServerDeploymentNotReady" time="2020-05-05T17:05:00+02:00" level=debug msg="image-registry operator not available, Reason: NoReplicasAvailable" time="2020-05-05T17:05:00+02:00" level=debug msg="image-registry operator is still progressing, Reason: DeploymentNotCompleted" time="2020-05-05T17:05:00+02:00" level=debug msg="network operator is still progressing, Reason: Deploying" time="2020-05-05T17:05:00+02:00" level=debug msg="openshift-apiserver operator is degraded, Reason: APIServerDeployment_UnavailablePod" time="2020-05-05T17:05:00+02:00" level=debug msg="openshift-apiserver operator not available, Reason: APIServerDeployment_NoAPIServerPod::APIServices_PreconditionNotReady" time="2020-05-05T17:05:00+02:00" level=debug msg="operator-lifecycle-manager-packageserver operator not available, Reason: " time="2020-05-05T17:05:00+02:00" level=debug msg="operator-lifecycle-manager-packageserver operator is still progressing, Reason: " time="2020-05-05T17:05:00+02:00" level=debug msg="About to run SSH command:\ndf -B1 --output=size,used,target /sysroot | tail -1" time="2020-05-05T17:05:09+02:00" level=debug msg="SSH cmd err, output: <nil>:<PHONE_NUMBER>4<PHONE_NUMBER>4 /sysroot\n"

seems that the setup hangs right now at this point

setup doesn't hang but looks like operators are taking more time than usual to become in the sane state which is unexpected, by any chance you are using a baremetal  system as host not a CentOS-8 VM ?

I run a (i guess) powerful virtualbox CentOS 8 VM yes, 6 CPUs, 16 GiB RAM, 150 GB Storage on SSD.
So I think running crc in a VM is not recommened? :)

So I think running crc in a VM is not recommened? :)

Definitely no, what is your host system and why not run crc directly from the host?

I run Windows 10 but wanted to avoid Hyper-V as I don't really like it, but I think I need to give it a shot then :/

Seems you're right ;) After a short hassle with Hyper-V everything works fine, thanks!

Hi,
I'm trying to set up on Minishift (OpenShift) 4.8.5 on VM Ware Fusion on my mac but seems not compatible getting this error
INFO Waiting for user's pull secret part of instance disk...
Failed to update kubeadmin user password: Temporary error: ssh command error:
command : timeout 5s oc get secret --context admin --cluster crc --kubeconfig /opt/kubeconfig
err     : Process exited with status 124\n (x13)
if anyone familiar to the above error pls help the share the solution
VM Ware Fusion configuration

Version - 12
Core allocated - 4
RAM allocated - 24 GB
HDD allocated - 150 GB
OS- CentOS (8) and RHEL (9+)

MacBook Pro configuration

OS- BigSur 11.6
Intel i9
RAM- 64 GB

Can you open a new issue for this? Though nested virtualization is in general unsupported. If you are using a proxy, there are several known issues with this in the current releases, which should be fixed with the next release.


Unable to run prostate-mri-lesion-seg on Colab

@jtetrea trying to run this notebook https://github.com/Project-MONAI/research-contributions/blob/main/prostate-mri-lesion-seg/tutorial.ipynb on Google Colab leads to this error:

If this notebook is not expected to run on Colab, it would be nice to indicate the prerequisites/limitations in the opening paragraph.
But also it would be nice to make it work on Colab, since IMHO it is the easiest way to try things out quickly.

Thanks @fedorov for giving this a try. The notebook was not intended to be executed standalone on Colab. It references application code and so the full repository should be present and available.
Executing on Colab, just with the notebook, would be possible if some cells were added to write the application files locally throughout. This would be similar to other MONAI Deploy examples such as the segmentation app tutorial here. This would be possible and may be added in the future but for now the tutorial.ipynb should be used with full repository available locally.

Thanks @fedorov. Yes, MONAI MAPs are containerized solutions for deployment of MONAI models. By the way, there are also some additional scripts in the repository, such as the scripts/local-test.sh script that executes the application code outside of the container (the other script executes within a MAP, but outside a Jupyter environment). Feel free to try that script if you have interest on Colab as it may circumvent the Docker issue.

@jtetrea I do not have time to do this deep of an investigation. I still think having a notebook that works out of the box with Colab would significantly improve visibility and accessibility of this model. But it's not my project, and I can't make the time to work on fixing it. If you don't have interest/time either, please feel free to close this issue!

No problem. I agree that having a mechanism to work directly on Colab may improve accessibility for some users. We will consider this as we plan to create extensions and updates to this repository in the near future. Thanks!


Shift to the pymc current version

Update to pymc current version and add some Arviz content

I'm reading this book again these days and find some of the contents a bit outdated even in pymc3 version.
So I plan to update it to pymc current version.

Great, thanks @miemiekurisu. This is pymc4, correct?

Great, thanks @miemiekurisu. This is pymc4, correct?

Definitely, based on the pymc4. And I found some gaps between pymc4 and 3, different APIs, different usages, etc.
But I'll try my best ヾ(≧▽≦*)o

Thanks for taking this on @miemiekurisu!

Update Chapter 5, some codes work, but I'm afraid it needs some review or check =￣ω￣=

@CamDavidsonPilon Can you enable reviewnb for this repo?

♪(´▽｀) Finished Ch1-6 and plan to check codes again. And add some Arviz content to make it look more "pymc4".  ★,°:.☆(￣▽￣)/$:.°★ 。

Once we have reviewnb added looking forward to reviewing!

I've added reviewnb to the repo. It's my first time using it, so I'm not 100% where it's accessed by others. Can ya'll access this page?

I've added reviewnb to the repo. It's my first time using it, so I'm not 100% where it's accessed by others. Can ya'll access this page?

Affirmative~ ヾ(•ω•`)o

Hi @miemiekurisu Miemiekurisu,
I restarted reading Davidson-Pilon book last weekend, in parallel with Oswaldo Martin´s book, and both were written with previous versions of PyMC and I was struggling to replicate the results with the current code until I found your fork.
Thank you very much for the effort! And also for adding some Arviz steps, which since PyMC3 makes the data analysis and model development check much easier.
Running it locally or even in Colab, I realized that your running time in the sampling step, even using exactly the same sampler and settings was much faster than mine, do you have any advice on how to speed up it?
Thanks

Hi，@Slepetys ， glad you found it helpful  q(≧▽≦q)
I'm not so sure about the speed difference,  maybe it is the hardware difference?
I just use i3 12th gen to do this work. To be honest, I think it's so so slow in some cases.
I provide my  hardware brief below:
OS: Ubuntu 22.04.1 LTS x86_64
Kernel: 5.15.0-46-generic
Shell: bash 5.1.16
CPU: 12th Gen Intel i3-12100 (8) @ 5.500GHz
GPU: Intel Device 4692
Memory: 6280MiB / 15744MiB

@miemiekurisu Sorry this took a while but your port looks really good. There are some minor things, mainly about the usage of test_values but those should be easy to fix.

@miemiekurisu Sorry this took a while but your port looks really good. There are some minor things, mainly about the usage of test_values but those should be easy to fix.

Sorry for not getting back to you sooner, I'm tied up with a company project whole Oct. (/▽＼)
Luckily, the project will be done at the middle of Nov.
I'll fix these review problms ASAP. (/ω＼)

Yeah, you're right, and infact I've noticed this initval and test_value problem when I upgrade it to pymc4.Accroding to this URL: https://github.com/pymc-devs/pymc/issues/562#issuecomment-932146862test_val is a misusing, initval parameter should be used.I try to keep the orignal content as much as possible at first, so I used the aesara.config.compute_test_value = 'warn' to keep compatibility. Maybe I should add some brif comments to explain this problem to previous version readers?

View entire conversation on ReviewNB

Maybe I should add some brif comments to explain this problem to previous version readers?

Yes, I think that'd be helpful.

Got it.

View entire conversation on ReviewNB

That's strange, I think it's a front end or page css problem. Sometimes I got this problem too, and it works properly after I refresh the notebook page serviral times.

View entire conversation on ReviewNB

Ur right, I noticed the kwarg at the next chapters, and also left some comments.

View entire conversation on ReviewNB

PYMC4 version is 4.1.5, let me check the API again

View entire conversation on ReviewNB

Accroding to the last version here: pymc/model.py at main · pymc-devs/pymc (github.com) def Potential(name, var, model=None):
	    """Add an arbitrary factor potential to the model likelihood
    Parameters
    ----------
    name: str
    var: PyTensor variables

    Returns
    -------
    var: var, with name attribute
    """

View entire conversation on ReviewNB

ReviewNB often fails but then it displays fine.

View entire conversation on ReviewNB

Accroding to the last version here: pymc/model.py at main · pymc-devs/pymc (github.com)

OK, I was confused. Looks good then!

What are the next steps here? would be great to get this merged.

What are the next steps here? would be great to get this merged.

Sorry for not getting back to you sooner ...... again 〒▽〒
I believe I had checked and solved most ReviewNB problems.
I think it's ready to be merged  (/≧▽≦)/

@miemiekurisu Great -- thanks!
@CamDavidsonPilon Want to merge?

I've been pretty absent from this discussion, but thank you @miemiekurisu and @twiecki for shepherding this in!


Remove password hash from JWTs

Currently the full password hash is included in all tokens as a way to make sure tokens are invalidated after a password reset. Although this does not directly enable unauthorized access it does expose the hashes unnecessarily. A more secure, but still simple, system would be to store a separate value on the user object that changes on each password change which will be compared to the value in incoming tokens. This value could be a counter, a date or a UUID.

Solved by https://github.com/nodes-vapor/jwt-keychain/pull/99 (@siemensikkema otherwise feel free to re-open)


Fixing the adopting the data plane doc

Fixing the command to deploy a standalone environment with TLS, create rootca-internal secret on openstack namespace.

Thanks, the linter check got renamed so i'll push the rebase button to make this mergeable, to pass the pre-commit check requirement.


pyspec ask --help and -v from the tool for each test run

I noticed there are requests for each time the test is generated. it is enough to ask 1 time at the begining

The response from --help and --version should now be cached; will verify the next time we do some t8n tooling clean-up.


Adding settimeout for displaying answer and then navigate to the next

Associated Issue: #226
Summary of Changes

Added settimeout function, so user can see animation of success answer
Navigate to next puzzle automatically once puzzle is answered

Pull Request Test Coverage Report for Build 476

0 of 3 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.3%) to 85.56%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/js/components/Rebus.js
0
3
0.0%

Totals

Change from base Build 475:
-0.3%

Covered Lines:
156

Relevant Lines:
179

💛  - Coveralls

@Nilkamal Thanks for working with this 🙂 However, since we are already focusing the next button I don't think this is necessary (just press enter, or even right arrow on your keyboard to go the next rebus). Maybe we could add some visual guidance to let the user know about these keyboard shortcuts instead?

I think from user point of view, after completing question most obvious
action user can do is to navigate next. So i think it will save user from
extra click.
If i wrong, i will work on other issue as well.
Thanks
On Tue, 12 Mar 2019 at 1:48 PM, Olle Lauri Boström<EMAIL_ADDRESS>wrote:

@Nilkamal https://github.com/Nilkamal Thanks for working with this 🙂
However, since we are already focusing the next button I don't think this
is necessary (just press enter, or even right arrow on your keyboard to go
the next rebus). Maybe we could add some visual guidance to let the user
know about these keyboard shortcuts instead?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ollelauribostrom/rebus/pull/227#issuecomment-471899711,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKnbrA4HbTFHqWY8ERstFf1Fttco_Fd5ks5vV2K9gaJpZM4bqGU8
.

--
Thanks & Regards,
Nilkamal Shah

That's a good point, I have to think about it some more. I can see some cases where this behaviour is not what we want:

The user wants to go back and look at an already answered rebus (is now sent to the next rebus automatically).
The user is sent a link to a rebus which the user has already answered (is now sent to the next rebus automatically).
The user comes across "a block of" previously answered rebuses (is now sent to the next -> to the next -> to the next etc).


How to dynamically set gradient fill in svg

Question
I've got react-native-svg set up with react-native-svg-transformer and it all works as intended. However, there is a bug(?) or issue as it relates to setting the gradient fill in the svgs. I'm not sure how to do it, but I've tried many things. The color and fill props work as a solid fill on the svg, but I can't target the linearGradient inside the svg outside of the svg. I'll show some code to illustrate my point:
<?xml version="1.0" encoding="utf-8"?>
<svg viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <linearGradient gradientUnits="userSpaceOnUse" x1="12.99" y1="0" x2="12.99" y2="25.92" id="gradient" gradientTransform="matrix(0.707053, -0.707161, 1.001161, 1.001008, -9.106794, 9.237734)">
      <stop offset="0" style="stop-color: rgb(161, 70, 183);"/>
      <stop offset="1" style="stop-color: rgb(0, 38, 94);"/>
    </linearGradient>
  </defs>
  <path d="M13.91.38a1.3 1.3 0 0 0-1.84 0L.33 12.14c-.4.4-.35.73-.<IP_ADDRESS>.<IP_ADDRESS>h1.32v10.45a2 2 0 0 0 1.92 2h5.95v-7.08h5.76v7.08h6.1c1.03 0 1.9-.93 1.9-2V13.47h1.36c.54 0 .73-.28.79-.44.06-.16.1-.5-.28-.9L13.9.39Z" fill-rule="evenodd" fill="currentColor" />
</svg>

Ideally, I'd rather just set the linearGradient outside of the svg somehow, but the documentation doesn't really make it clear if that is possible. If I can't do it externally, I'd at least like to be able to target the id of the linearGradient within the svg (usually you do fill="url(#gradient)"). Is there a way to accomplish this? Thanks!

Did you find a way to address the defs-settings? I'm actually fighting with the same issue 😅

I'm having this same problem

What is the exact issue here? You can use id prop similar to how it is done on web to use the linearGradient in your other components, e.g.:
<?xml version="1.0" encoding="utf-8"?>
<svg viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <linearGradient id="grad" gradientUnits="userSpaceOnUse" x1="12.99" y1="0" x2="12.99" y2="25.92" id="gradient" gradientTransform="matrix(0.707053, -0.707161, 1.001161, 1.001008, -9.106794, 9.237734)">
      <stop offset="0" style="stop-color: rgb(161, 70, 183);"/>
      <stop offset="1" style="stop-color: rgb(0, 38, 94);"/>
    </linearGradient>
  </defs>
  <path d="M13.91.38a1.3 1.3 0 0 0-1.84 0L.33 12.14c-.4.4-.35.73-.<IP_ADDRESS>.<IP_ADDRESS>h1.32v10.45a2 2 0 0 0 1.92 2h5.95v-7.08h5.76v7.08h6.1c1.03 0 1.9-.93 1.9-2V13.47h1.36c.54 0 .73-.28.79-.44.06-.16.1-.5-.28-.9L13.9.39Z" fill-rule="evenodd" fill="url(#grad)" />
</svg>

Am I missing something?


[ISSUE#1911][MAS1.3.1][Screen Reader-Add other service] After error, the voiceover announced incorrect label of the edit fields.

Fixes #1911
Description
This pull request fixes how the Voiceover reads the error label in TextField components,
Changes Made
Updated the TextField component to use an aria-label instead of an aria-describedby attribute. This way we can create a label with the combination of the component label and the error message.
Testing

Coverage remained the same at 68.669% when pulling 15282a269aa3f4c30d355e52f4223c3996e6c913 on fix/vo-text-field-error-message into d30f363539b78f5f068b202e8028fc51f4737194 on master.

@corinagum thanks for the feedback! We'll run some tests to make sure about this and let you know.


CDK-906. HBase tests fail with HBase 0.99.

Merged in https://github.com/kite-sdk/kite/commit/0031b2ae80b5bd47fffd0279acda4979e9ad4074


GroupController using HttpClient is missing

I saw the GroupController using HttpClient in your video but it isn't in this source code. Can you update it please?

Like I mentioned in the YouTube comments, if you're looking at master or develop, it isn't there because it was removed in episode 29.
To see the code as it was when the video was recorded, you can use the tags.
In this case, the code that was being used in episode 24 was the same as in 21 -> https://github.com/AspNetCoreFromZeroToOverkill/WebFrontend/tree/episode021


Feature Petition: Feature to split the console panel.

This is a feature petition and not an issue itself but I have been encouraged by Carlos Cordoba to do it so.
https://github.com/spyder-ide/spyder/issues/17377#issuecomment-1050053365
It would be very helpful to be able to split the python console panel into two or more panels just like it can be done with the editor panel.
It would be very helpful to monitor more than one running processes especially when debugging code that sporadically fails.
With actual layout I can only monitor one of the processes and if the hidden one fails I cannot see it.
Of course if I run the scripts out of Spyder I am unable to check later the variables which is what makes Spyder the best tool to code IMO.
It woud be very much appreciated.
Thanks in advance
Eduardo

Hi @EduardoAlbaizar,
Thanks for opening this issue, and this is something that we could do in the future for sure. I'm not able to give you a time estimate for this to be done because we are currently working in finishing the migration to the new API and bug fixes, which is taking up the majority of the team's effort. If you are interested in helping us do this work, just let me know and we can provide you with guidance on how to contribute!

Hi Stephannie,
I am afraid I cannot help in that since I am just a regular Python user as Data Scientist.
I will try to provide feedback and report bugs. I guess it is the best way I can be helpful.
Regards
@.***Eduardo Albaizar
Process Scientist
Vidrala S.A.
T:   +34 946 719 733
M: +34 626 928 803
www.vidrala.comhttp://www.vidrala.com/
De: Stephannie Jimenez Gacha @.>
Enviado el: martes, 1 de marzo de 2022 17:52
Para: spyder-ide/spyder @.>
CC: EDUARDO ALBAIZAR MENCHACA @.>; Mention @.>
Asunto: Re: [spyder-ide/spyder] Feature Petition: Feature to split the console panel. (Issue #17415)
The following email comes from an external source. Be careful with any links or requests
Hi @EduardoAlbaizarhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FEduardoAlbaizar&data=04|01||245c8375faba4eeb5f3e08d9fba3c66f|48cbe2043cf14d96b0718e6ca0926b07|0|0|637817503108500234|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=f1ezgRQU5Tnl0KgyedvAgGue%2Bn%2BA4KTQuo4yCO4BJAo%3D&reserved=0,
Thanks for opening this issue, and this is something that we could do in the future for sure. I'm not able to give you a time estimate for this to be done because we are currently working in finishing the migration to the new API and bug fixes, which is taking up the majority of the team's effort. If you are interested in helping us do this work, just let me know and we can provide you with guidance on how to contribute!

Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fspyder-ide%2Fspyder%2Fissues%2F17415%23issuecomment-1055645331&data=04|01||245c8375faba4eeb5f3e08d9fba3c66f|48cbe2043cf14d96b0718e6ca0926b07|0|0|637817503108500234|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=tglLdh1kOQvkV8LzOslIWuUqgZsJGdIAdmIyRvWXIWs%3D&reserved=0, or unsubscribehttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FALQCSAOLCJ2GEI7IRUZ5UNTU5ZDKFANCNFSM5PTT4E3Q&data=04|01||245c8375faba4eeb5f3e08d9fba3c66f|48cbe2043cf14d96b0718e6ca0926b07|0|0|637817503108500234|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=9wqFoP8iUx6e3ltIXQFcCeKx36DSBX0k4gQ61vQnr1k%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01||245c8375faba4eeb5f3e08d9fba3c66f|48cbe2043cf14d96b0718e6ca0926b07|0|0|637817503108500234|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=Jt9gTh%2F67KPB99Rziu1CnSrqTm5zrnYmvBz3OawAhM0%3D&reserved=0 or Androidhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01||245c8375faba4eeb5f3e08d9fba3c66f|48cbe2043cf14d96b0718e6ca0926b07|0|0|637817503108500234|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=xLtTl49w%2FSkF%2F6NeVo0jKBUiYq6yXmeOX8LQ1L42sJk%3D&reserved=0.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

That's ok! Reporting bugs and giving us feedback is really helpful :)


tfe.keras - depthwise conv2D

Added support to depthwise convolution.
Implementation is based on the paper Diagonalwise Refactorization: An Efficient
Training Method for Depthwise Convolutions (https://arxiv.org/pdf/1803.09926.pdf) and was expanded to support depth_multiplier > 1.
Related to issue #460

Thanks for the review @jvmancuso!
Regarding the gradient - I didn't really put much thought into this but the paper says that -

During backward propagation, the gradients from the
top layer are passed only to the diagonal weights and all other
positions remain 0.

and also -

Yup, I'd seen the first sentence, just seemed somewhat ambiguous to me.  Anyway, that should be good enough to admit an implementation later on. LGTM!


Tweak 3222 for Vasco D60

parser not a percentage, looks like a sort of mapping

Good work, but I am going to completely refactor this on your behalf:

I am going to omit the typed dict for nwo
you can probably drop this PR (but do submit another if you feel you've more to add)


Added .htaccess file to prevent directory listing

Description

Disable directory listing in report app
Motivation and Context

#152
Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

I hereby agree to the terms of the AET Contributor License Agreement.

Hey, this looks like a duplicate of #376 . Which one do you wish to merge?

Yes, it's the same as #376 but this one is directly from AET repository instead of my fork. In agreement with Piotr Wolynski which asked me to push my changes from my fork to AET repo and create new PR (he mentioned that will delete #376).

So should the other one (https://github.com/Cognifide/aet/pull/376) be closed?


Add Kconfigs for PSA_WANT symbols

With the goal to move toward PSA crypto APIs (https://github.com/zephyrproject-rtos/zephyr/issues/43712) it is useful to have the possibility to define PSA_WANT_xxx features that are required. So far all of these symbols are automatically guessed in MbedTLS' header files by starting from MBEDTLS_xxx features. However there are some limitation to this:

PSA_WANT_xxx symbols are not 1:1 mapped with MBEDTLS_xxx ones
for some PSA_WANT_xxx there is no mapping with MBEDTLS_xxx (ex: PSA_WANT_KEY_TYPE_DERIVE)

For this reason this PR introduces Kconfig and an header file to support PSA_WANT_xxx symbols with a mechanism which mimics the already existing Kconfig.tls-generic/config-tls-generic.h combo. These new Kconfigs will be used whenever there is some crypto provider enabled, i.e. when MBEDTLS_PSA_CRYPTO_C or BUILD_WITH_TFM are set.

CI is green so this PR is ready for initial reviews.

Is it expected to be executed manually every now and then?

It would need to be run every time we 1. want to make a change to something in Kconfig.psa or 2. update MbedTLS.

Is there any CI setup that can run it an check it does not generate any change?
It would be nice to have this to detect changes in compatibility/naming.

I have also thought about the possibility of having an automatic check to ensure that the committed header file is exactly what is generated by the script. Could be nice if it's not too involved to do.

Is there any CI setup that can run it an check it does not generate any change?
It would be nice to have this to detect changes in compatibility/naming.

I have also thought about the possibility of having an automatic check to ensure that the committed header file is exactly what is generated by the script. Could be nice if it's not too involved to do.

I totally agree on this and I will investigate on it.

I totally agree on this and I will investigate on it.

Since the script is in modules there's no current workflow that looks for pytest in there. I think you have two options:

you could write a pytest test and add the path to https://github.com/zephyrproject-rtos/zephyr/blob/main/.github/workflows/scripts_tests.yml#L71 (then you can probably mock the write function and make sure it's called with what you expect, you may have to refactor the script a bit to make it testable), or
just add a test to validate against a golden sample in an actual build only test, see https://github.com/zephyrproject-rtos/zephyr/tree/main/tests/misc/check_init_priorities for an example, this may be easier if you already have a build test that runs this script, just add the validation step on it or something

I totally agree on this and I will investigate on it.

Since the script is in modules there's no current workflow that looks for pytest in there. I think you have two options:
* you could write a pytest test and add the path to https://github.com/zephyrproject-rtos/zephyr/blob/main/.github/workflows/scripts_tests.yml#L71 (then you can probably mock the write function and make sure it's called with what you expect, you may have to refactor the script a bit to make it testable), or

* just add a test to validate against a golden sample in an actual build only test, see https://github.com/zephyrproject-rtos/zephyr/tree/main/tests/misc/check_init_priorities for an example, this may be easier if you already have a build test that runs this script, just add the validation step on it or something

@fabiobaltieri I think I need a quick help on this. I modified the python script so that it's also able to just check if the already existing files are up to date or not and I also added a check in twister.yaml. However I don't see this test appearing on the CI. What am I missing?

I should have addressed all the comments now and the check on auto-generated files is active (implementation is here)

Would it possible to merge this PR now that we have a good amount of approvals, please? This helps unlocking other depending PRs

@valeriosetti Given that this can cause problems for some apps, should we have an entry in the migration guide?

Yes sure! I can work on that. I was also requested to review the crypto documentation changes in https://github.com/zephyrproject-rtos/zephyr/pull/73241


getting error when testing with config file

I have created the config.yml file from the example provided.  However I am getting this error.
I am using CentOS 7 latest.
/opt/prometheus/vmware_exporter/vmware_exporter.py -c /opt/prometheus/vmware_exporter/config.yml
File "/opt/prometheus/vmware_exporter/vmware_exporter.py", line 219
return list(metrics.values())   # noqa: F705
SyntaxError: 'return' with argument inside generator
Here is the config.yml
default:
    vsphere_host: "esx"
    vsphere_user: "root"
    vsphere_password: "password"
    ignore_ssl: True
    collect_only:
        vms: True
        vmguests: True
        datastores: True
        hosts: True
        snapshots: True

esx:
    vsphere_host: <IP_ADDRESS>
    vsphere_user: 'root'
    vsphere_password: 'password'
    ignore_ssl: True
    collect_only:
        vms: True
        vmguests: True
        datastores: True
        hosts: True
        snapshots: True

limited:
    vsphere_host: slowvc.example.com
    vsphere_user<EMAIL_ADDRESS>    vsphere_password: 'password'
    ignore_ssl: True
    collect_only:
        vms: False
        vmguests: False
        datastores: True
        hosts: False
        snapshots: False

python version?

I am using python3.6 as stated in the README.md

But it looks like the script is not calling python 3.6....?
#!/usr/bin/env python
# -*- python -*-
# -*- coding: utf-8 -*-
"""
Handles collection of metrics for vmware.
"""

it  seems like your system isn't using v3 as default
u could try
alias python=python3

I changed the python on the first line to python3 and got this:
$ /opt/prometheus/vmware_exporter/vmware_exporter.py -c /opt/prometheus/vmware_exporter/config.yml
Traceback (most recent call last):
  File "/opt/prometheus/vmware_exporter/vmware_exporter.py", line 35, in <module>
    from .helpers import batch_fetch_properties, get_bool_env
ModuleNotFoundError: No module named '__main__.helpers'; '__main__' is not a package

could you try add
alias python=python3.6

to your bashrc and relaunch exporter?

No, this would break the whole system.

I changed the environment line to pythong36.  Still getting same error.

/usr/bin/env python36
Python 3.6.8 (default, Apr 25 2019, 21:02:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

Try to cd into the vmware_exporter folder, running the statement again.
Some hint: Do not run vmware Exporter as root.

To test I am not running it as root.  I am running it as my user.  What other files should I be editing?
I downloaded the vmware_exporter.tar.gz

Got it working.

/close

@andrewm659 how could you fix it?I have the same problem, getting
ModuleNotFoundError: No module named 'main.helpers'; 'main' is not a package

Got it working.

what did you do to get it working ?
I'm having the same issue.


Adding experience page #4

fixes #4
This should have a list of the experience you have related to the job.

#4 issue closed


HTML rendering quirks

Hi!
It's good to see this package started. We built an editor based on Slate, we had to solve the same problems you're doing here. Your code looks great!
I want to point you also to https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Whitespace it's a document which would have saved me a lot of trouble, if I'd have known about it in time. Also, we had a lot of issues with the fact that Firefox and Google Chrome behave differently when copying/pasting content. Firefox preserves the original HTML that's copied, while Chrome reformats it to a "normalized, wysiwyg version".

Check https://github.com/plone/volto/blob/4e619b73bda70c4b0e52a2fb48048bc11e6f0484/packages/volto-slate/src/editor/utils.js#L210

@tiberiuichim thank you! That's really helpful - I've been struggling with how to handle whitespace. I'm going to keep this issue open until I have something reasonable.
Also, it's reassuring to see the same struggles. I can relate with the following comment!
https://github.com/plone/volto/blob/4e619b73bda70c4b0e52a2fb48048bc11e6f0484/packages/volto-slate/src/editor/deserialize.js#L158-L161

Thanks for the tip @tiberiuichim ! Added whitespace formatting in https://github.com/thompsonsj/slate-serializers/pull/18 based on https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Whitespace.


Problem with loading private key

Though my setup is correct, i always got this error
Passphrase given, but the private key in XXX is not encrypted, please make sure you are using the correct certificate/passphrase combination.

Commenting Certificate.php on line 171.
solved the problem..
Push notification sent without problem.

Could you provide some information about your setup?

Please check if your private key is protected by a passphrase by opening the file and checking the first lines. Do the first lines state that is it encrypted, like the example below?

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,0AA583BC09936AF678BF9DF5CFC517CE

Could it be that you pass an empty string into Notificato instead of using null somewhere?

Also, you say commenting out Certificate.php:171 fixes it, but this is a comment itself. Do you mean that you comment out the if-statement and its contents (Certificate.php:172-179) right below it?

Hi, thank you for your fast reply.
No it doesn't.
The pem certificate starts with
Bag Attributes
    friendlyName: Apple Development IOS Push Services: com.xxx.xxxxx
    localKeyID: 64 F7 78 E0 1F 46 D0 C3 31 DC 8C 2C 63 B2 24 85 39 C2 00 9D
subject=/UID=com.xxx.xxx/CN=Apple Development IOS Push Services: com.xxx.xxx/OU=65R2M84NWL/C=US
issuer=/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority

I created the pem file using command line below
openssl pkcs12 -in aps_development.p12 -out aps_development.pem -nodes -clcerts

Since i have to enter the passphrase when execute the command line i thought it should be encrypted?
Yes, i mean i commented out the lines below line 171 (which is the if statement like you have said).
Thank you

The conversion you did is putting everything in one file, which is a good thing to do, but I think your private key is somewhere lower in the file. Do you see a -----BEGIN RSA PRIVATE KEY------line somewhere in the file? That is where your private key starts and the ENCRYPTED statement should be.
Could you let me know if you can find the private key part and if it is encrypted?
Also; Try running your Notificato code without any passphrase. (Pass null instead of the passphrase.) Is that working? If it is that is also an indication the key is not encrypted.

Yes, you are correct,
There is -----BEGIN RSA PRIVATE KEY----- at the bottom,
It looks like the private key is on the bottom.
And, there is no encrypted text below -----BEGIN RSA PRIVATE KEY----- like you wrote before.
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,0AA583BC09936AF678BF9DF5CFC517CE

I'll try to pass null, let's see if it's working.
However here is how i create the pem file.
Since i need the passphrase when doing these procedure. so i thought it's already encrypted.
Please correct if i'm wrong somewhere around.

Download push *.cer file from apple developer.
Double click the file, and it's installed on my key chain.
Now, i right click the installed cer on my keychain, and export it to .p12,
When exporting, i need to type the passphrase.
Then i run

openssl pkcs12 -in aps_development.p12 -out aps_development.pem -nodes -clcerts

And i need to type the passphrase that i entered when exporting.

Okay, so looks like the error Notificato presented was correct after all. Since the key is not encrypted, but you think it is, the library warns you about this.
I googled a bit and it seems that the -nodes option removes the encryption from the private key when converting it from p12 to pem. I'm not sure if you can just skip the -nodes option or that skipping it will give other issues.
Note that the passphrase you type is to decrypt the key from the p12, not to encrypt it into the pem file.

Confirmed, this is false positive. The problem was the key was not encrypted. passing null on passphrase will sent the notification.

Thanks for letting me know!


Add release scripts.

https://forum.ghost.org/t/are-github-releases-automated/7160
https://github.com/TryGhost/Ghost-Utils/tree/master/packages/release-utils


Web session IP protection conflicts with too smart browsers [$10]

Some browsers try both IPv4, and IPv6 for every request, and show result of whatever responded faster. http://tools.ietf.org/html/rfc6555
Probably we need to store 2 addresses per session (one IPv4, one IPv6), and if someone connects with existing session from unknown IP, but the corresponding IPvX slot of the session is still empty, fill that slot, and allow the connection.
Issue found with help of sterkh.

---
There is a **[$10 open bounty](https://www.bountysource.com/issues/3099474-web-session-ip-protection-conflicts-with-too-smart-browsers?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github)** on this issue. Add to the bounty at [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1759&utm_medium=issues&utm_source=github).

I'd like to work on the issue. Can you help me with how to get started?

Well, start with compiling it. The relevant code is in HTTPSock.cpp and WebModules.cpp
To reproduce, you either need dual stack setup, with DNS pointing at both addresses, or craft HTTP requests manually.


Python setup.py egg_info did not run successfully.

Can not install requirements with Python 3.11:
  Using cached numba-0.56.4.tar.gz (2.4 MB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/36/p0ks18ys1f39yn9vwvs9nnc00000gn/T/pip-install-a3azp05c/numba_80422e7396b9433b8086bee7b2be228f/setup.py", line 51, in <module>
          _guard_py_ver()
        File "/private/var/folders/36/p0ks18ys1f39yn9vwvs9nnc00000gn/T/pip-install-a3azp05c/numba_80422e7396b9433b8086bee7b2be228f/setup.py", line 48, in _guard_py_ver
          raise RuntimeError(msg.format(cur_py, min_py, max_py))
      RuntimeError: Cannot install on Python version 3.11.2; only versions >=3.7,<3.11 are supported.
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.```

It seems that numba package does not support Python 3.11 yet, so it might be necessary to downgrade to 3.10 for it to work.


fix: return type should be dict and not ScalarMapContainer (grpc type)

Description
Return type coming from run_discovery_script_file was ScalarMapContainer instead of dict. Though they effectively behave in the same way, it is true that the type should be a dictionary since we should avoid returning gRPC objects to the end user.
Issue linked
Closes #1102
Checklist

[X] I have tested my changes locally.
[X] I have added necessary documentation or updated existing documentation.
[X] I have followed the coding style guidelines of this project.
[X] I have added appropriate unit tests.
[X] I have reviewed my changes before submitting this pull request.
[X] I have linked the issue or issues that are solved to the PR if any.
[X] I have assigned this PR to myself.
[X] I have added the minimum version decorator to any new backend method implemented.
[X] I have made sure that the title of my PR follows Conventional commits style (e.g. feat: extrude circle to cylinder)

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

Project coverage is 90.23%. Comparing base (51852b0) to head (a389c7a).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1103   +/-   ##
=======================================
  Coverage   90.23%   90.23%
=======================================
  Files          93       93
  Lines        6839     6839
=======================================
  Hits         6171     6171
  Misses        668      668

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


curl fetcher

there is a bug in hackney which prevents me from using httppotion, I can use the splash fetcher just fine.
But it seems heavy so I created a simple fetcher that uses curl. It probably can be extended and added to the repo.
In the config its just fetcher: {Crawlers.Curl, []},
defmodule Fetchers.Curl do
  def fetch(request, options) do
    case System.cmd("curl", [request.url, "-s"] ++ options) do
      {body, 0} ->
        {:ok,
         %HTTPoison.Response{
           body: body,
           headers: [],
           request: request,
           request_url: request.url,
           status_code: 200
         }}
      error ->
        IO.inspect(error)
        {:error, :failed}
    end
  end
end

I think that we would not be supporting this, as it adds additional maintenance burden.
A contribution to the docs under custom fetchers would be welcomed, if you'd like to share your specific use case @dkuku


Feature request: auto set GO version when changing directories

Environment managers from other toolchains, like pyenv for Python or SDKMAN for Java, support automatically changing the version of their respective runtimes based on a simple plain-text config file in the root folder of a project workspace (ie: .pyenv for Python, .skdmanrc for Java). It would be nice if gobrew supported something similar.
I think the way these other tools work is, they inject hooks / shims into the shell environment so that when a user performs a cd operation the tool will look in the target folder it is changing to and locates a file with a specific name. Then it parses the contents of that file, and performs the appropriate environment-switch operation / command to automatically set the runtime version to the value stored in the text file.
Suggestion
You could set up gobrew to with a similar shim, so that if a file named something like ".gobrew" exists in the folder the user is changing to, then it could parse the contents of that file and see if a GO runtime version is installed that matches the value stored in the file. If so, then it could trigger the same logic as is done by running the "gobrew use " command, substituting the value from the file for the version number.
The tool would also need to be smart enough to save the previously used GO version and restore that when the user changes out of that directory, so that the global state is restored.
In addition, the tool would need to be smart enough to detect when the user changes into a subdirectory where one of the parent dirs contains the ".gobrew" file, so that the environment doesn't switch back when the user is navigating subfolders in the same workspace / repository.
There may be one additional edge case here to consider. Unlike the way pyenv and sdkman work, I think that changing runtime environments using gobrew affects the global system, so if a new terminal session is open while navigating the file system that new terminal session would inherit the same GO version as the previously active session. Similarly, if someone were to change directories into a GO project workspace and then subsequently terminate their terminal session, any future terminal sessions that open would likely use the same GO version from that workspace rather than the default global version. So some additional functionality may need to be added to gobrew to distinguish between "temporary" GO versions, and the default / permanent one.

I need some time to think

Adding to .bashrc to execute gobrew use mod of #101 upon cd.
Options below:
function cd {
    builtin cd "$@" && ls go.mod 2> /dev/null && gobrew use mod"
}

or
alias cd='builtin cd "$@" && ls go.mod 2> /dev/null && gobrew use mod'

Golang is simple language. And all changes in language do not broke programs.
All we need - use the last version golang for build.
These changes very interesting, but on my through not needed.

Thanks, yes I agree on that too. Generally only last 2 versions are EOL supported. I won't put that on the README, since it is not a feature the benefits using Go, and have the newly go use mod in the shadows if someone wants to use it.
One benefit of this I can see is putting it in the CI matrix [latest, dev-latest, mod]


POC: Prover trait

TITLE
Description
Description of the pull request changes and motivation.
Type of change
Please delete options that are not relevant.

[ ] New feature
[ ] Bug fix
[ ] Optimization

Checklist

[ ] Linked to Github Issue
[ ] Unit tests added
[ ] This change requires new documentation.

[ ] Documentation has been added/updated.

[ ] This change is an Optimization

[ ] Benchmarks added/run

This ideas are incorporated in PR #596


Simplify the handshake impl in the synth node

Builds on https://github.com/AleoHQ/snarkOS/pull/1693; only the last 2 commits are new, of which only https://github.com/AleoHQ/snarkOS/commit/b310471f6306f4aef10143a39614f65ea454aef1 is of interest.
This PR makes the handshake impl of the synthetic node much more similar to the one in the true node.
In addition, pea2pea is updated to 0.35.

Due to the conflicts in this PR and the one it builds on, I'll close this one, rebase the original and then append these changes to it.


How to disable throwing exceptions on an HTTP protocol errors for asynchronous requests?

I am sending concurrent asynchronous requests and I would like to retrieve fulfilled promises with the error status code when a request fails.
I am setting the 'http_errors' option to false but I am still getting an exception. Is there a way to disable throwing exceptions?
  $client = new \GuzzleHttp\Client();
  $promises = [];
  foreach ($urls as $key => $url) {
    $promises[$key] = $client->requestAsync('HEAD', $url, ['http_errors' => false]);
  }
  try {
    $results = \GuzzleHttp\Promise\unwrap($promises);
    $response = [];
    foreach ($results as $key => $result) {
      $response[$key] = $results[$key]->getStatusCode();
    }

    return $response;

  } catch (\GuzzleHttp\Exception\RequestException $e) {
      throw new BadRequestHttpException($e->getMessage());
  }

Setting http_errors to false should disable HTTP level errors for any context.


Failed to execute 'play' on 'HTMLMediaElement': API can only be initiated by a user gesture.

I know this has been raised before and that android requires a user gesture i.e  a tap. The issue I have is that I cannot trap the error by putting the buzz.play() in a try catch. This makes the whole website disabled.
Is there any way of trapping this error?

Hello, no sorry, I don't know how.
I'm interested in if you find something.

Yes I know it is a problem with Android and I have ended up putting a test in my code to see if running on Android and if then bring up a modal window with a button.
I wonder if  wrapping the code which calls the play method i.e. line 89 of buzz/src/buzz.js
this.sound.play();
in a try catch would help?

Please make some tests and tell me.
Thanks.

OK - will try and it out tomorrow and let you know.

I tried wrapping the line 89 in a try catch statement and it failed to catch the error when running in android - most annoying!

Sad :'(
Thanks for you contribution anyway.

@JohnAReid if I read it correctly, play() returns a promise, with which you should be able to catch the error:
this.sound.play()
    .then(null, function () { ... });

@apfelbox I give it another try and see if the promise returns an error. It will take a while as I have to make a separate version of my web site with the auto sound call - and then test it on Android tablet.

@apfelbox - tested it out but no change - I suspect the html5 code is not registering the error back to js code.


Redesign profile page info banner

Profile page: https://www.speedtyper.dev/profile/codicocodes
This is the current info banner:

TODO:

Extract the ProfileInfoBanner into a reusable component
Add avatar URL
Add link to GitHub using SVG

This is a rough sketch:

Acceptance Criteria:

Avatar should be a circle
Width is aligned with the chart
Looks good on mobile: covers all screen without side scroll, uses rows instead of columns
Clicking GitHub Logo opens GitHub profile in a new tab
Hovering GitHub logo shows the expected clickable cursor
Hovering GitHub logo shows the text: "github.com"

Consider extracting the now private ResultsText component and making it a reusable component in common/components/
Additional tickets / features: (this can be broken out into a separate ticket)

Consider adding top game WPM

Maybe I can do this


IM-2 Section

There is no IM-2 section, there is IM-1 and then IM-3, IM-4.. Maybe IM-3 and the following IM sectioned need to be re-numbered.

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

ID: 3662c645-daea-73fb-ce69-85c5698ee4a8
Version Independent ID: 8bc33e42-7cfa-e93b-75ec-8ce7d2b6734c
Content: Azure security baseline for VPN Gateway
Content Source: benchmark/azure/baselines/vpn-gateway-security-baseline.md
Service: vpn-gateway
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@haalkaz , thank you for your feedback. We'll review this and get ack to you shortly!

@haalkaz , the numbering in the IM section and in all other sections is correct since they are not numbers but are Azure ID from the specific security benchmark and only the applicable ones are added in the security baseline for VPN Gateway.
IM section is taken from Azure Security Benchmark: Identity Management.
PA section is taken from Azure Security Benchmark: Privileged Access and so on.
This is already documented as below:

We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.


Add OpenAPI specification plugin

This PR adds a first cut at an OpenAPI specification and a playground for using the OAS via the docs website

I added @cjcenizal as a reviewer as well here


Update CONTRIBUTING.md

Issue: #37 #38

[x] Update to have 👎  policy.
[x] Add Issue Filing Convention.
[x] Review.

Contributing to FunBot
Issue Filing Convention

It is always welcomed to post an issue.
To get proceed, at least 3 approvals(👍) from the members are required.

Pull Request Merging Convention

All the comments SHOULD be addressed prior to merging.

To express a refusal on merging, the reviewer SHOULD emoji 👎 on the description.
And release the 👎 emoji when solved so that at the merging, there SHOULD be no 👎 left.

At least 3 reviewers SHOULD approve.

To express an approval, emoji 👍  on the description.

If any participant requests specific member for a review (eg. @masunghoon), hold until the member reviews the PR.

FunProg Team

There is no reason that I vote for +1. Thanks you for your effort. :)

@jwChung My pleasure! :)


Ember input required styling

Hopefully this gets rid of the ugly red box around required input divs! Please review.

Looks good 👍


fix: LSDV-5009: Fix MMDetection-3 ML backend

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@d7c7352). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff            @@
##             master    #258   +/-   ##
========================================
  Coverage          ?   2.15%
========================================
  Files             ?       8
  Lines             ?     835
  Branches          ?       0
========================================
  Hits              ?      18
  Misses            ?     817
  Partials          ?       0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Cannot find module: 'node:stream'. Make sure this package is installed.

With newer updates to @azure\core-rest-pipeline package, azuredevops build started to fail with below error.
Failed to compile.
<EMAIL_ADDRESS>Cannot find module: 'node:stream'. Make sure this package is installed.

Hiya @Dipali-arup, thanks for reaching out. In order to keep conversations in a single place we will be consolidating these Node 14 issues under https://github.com/Azure/azure-sdk-for-js/issues/28918 - please subscribe to that issue for updates. Much appreciated!
Duplicates https://github.com/Azure/azure-sdk-for-js/issues/28918


BTS-766 | Docs: Add DocuBlock for PUT /_api/collection//compact

Scope & Purpose
Add missing description for endpoint.
Interesting find: it only requires read access for both database and collection to trigger the compaction. Is that intentional?
Checklist

[x] :books: documentation written
[ ] Backports

[ ] Backport for 3.9: (Please link PR)
[ ] Backport for 3.8: (Please link PR)
[ ] Backport for 3.7: (Please link PR)

Related Information

[x] Docs PR: https://github.com/arangodb/docs/pull/894
[x] GitHub issue / Jira ticket: BTS-766

@Simran-B was it verified by jenkins?

Yes, all verified (and 3.10 examples committed to https://github.com/arangodb/docs/pull/894 but we will to redo that before merge)
✔ 3.10 https://jenkins.arangodb.biz:3456/view/Documentation/job/arangodb-ANY-examples/1607/
✔  3.9 https://jenkins.arangodb.biz:3456/view/Documentation/job/arangodb-ANY-examples/1634/
✔ 3.8 https://jenkins.arangodb.biz:3456/view/Documentation/job/arangodb-ANY-examples/1634/


Don’t require authentication to read documentation

Change-Id: I08d651580f14cbb8458917db3ace3c997728142d

@halatmit This change permits the documentation to be read without authentication. I have verified that it does not tickle the 100 URL Map problem.

LGTM

Pushing to Gerrit...