Result panel not displaying after test run

The lower panel of the Test properties tab is no longer showing results. May be due to a change in how we link results to tests.

This appears to be a linux-only bug.


Does MSGPACK support polymorphism, looking at documentation it seems yes, but it's not working with practical c#.net application.

I've following interface / class structure :-
public interface IRule
 {
        string RuleType { get; set; }
        bool GetStatus();
}

public class TimeRule : IRule
{
    public DateTime Time { get; set; }

    public bool GetStatus()
    {
        throw new NotImplementedException();
    }

    public string RuleType { get; set; }
}

public class ProcessStateRule : IRule
    {
        public long ProcessStateId { get; set; }
        public bool GetStatus()
        {
            throw new NotImplementedException();
        }

        public string RuleType { get; set; }
    }

public class Rules
    {
        public Rules()
        {
            this.RuleCollection = new List<IRule>{
                                    new TimeRule{ RuleType = "TimeRule", Time = DateTime.Now},
                                    new ProcessStateRule { RuleType = "ProcessStateRule", ProcessStateId = 100 }
                        };
        }

        public IList<IRule> RuleCollection { get; set; }
    }

I'm trying to serialize Rules class default object with following code but below code raising exception while creating serializer object, it says "This operation is not supported because 'IRule' can not be instantiated' .
        Rules rules = new Rules();
        var stream = new MemoryStream();
        var serializer = MessagePackSerializer.Get<Rules>();
        serializer.Pack(stream, rules);

Moreover, this is also not fixed by applying MessagePackKnownTypeAttribute on RuleCollection property in Rules class.
Could anybody help me on this.

Marking collection typed property with [MessagePackKnownType] represents "this collection should be polymorphic" rather than "ITEMS of this collection should be polymorphic". So, use [MessagePackKnownCollectionItemType] instead as following:
public class Rules
{
    public Rules()
    {
        this.RuleCollection = new List<IRule>{
                                  new TimeRule{ RuleType = "TimeRule", Time = DateTime.Now},
                                  new ProcessStateRule { RuleType = "ProcessStateRule", ProcessStateId = 100 }
                              };
    }

    [MessagePackKnownCollectionItemType( "Time", typeof( TimeRule ) )]
    [MessagePackKnownCollectionItemType( "ProcessStatus", typeof( ProcessStateRule ) )]
    public IList<IRule> RuleCollection { get; set; }
}

Thanks Yusuke for your quick response. It works as you suggested.


Adds events for watch-start and watch-end

Adds events for 'watch-start' and 'watch-end'
This allows users to listen for when watch tasks have been started or finished. Example use:
grunt.event.on('watch-start', function() {
  grunt.log.writeln('Watch tasks are about to be run!');
});

grunt.event.on('watch-end', function() {
  grunt.log.writeln('Watch tasks are finished running!');
});

Status: Opened for visibility
Reviewers: @tedtate
JIRA: https://mobify.atlassian.net/browse/RTM-141
Linked PRs: https://github.com/mobify/adaptivejs/pull/135
Changes

Added emits in watch.js where the task runner 'start' and 'end' events are.
Wrote tests for these events firing in the correct order.
Updated the README to document the new functionality.

How to test-drive this PR

Try and listen for the event in grunt, and verify that the event fires at the correct time (see example code above)

:+1:


How do i delete a faulty host entry from the influxdb database?

Delete a particular host entry from the influx-db database.
How can i delete a particular host entry from the influx-db database? Accidentally i have configured a wrong host entry in the database..

This is an entry that comes up in google when searching. I posted a response here
tldr;
> use telegraf
Using database telegraf
>
>
> show series where host='skynet'
key
---
cpu,cpu=cpu-total,host=skynet
cpu,cpu=cpu0,host=skynet
cpu,cpu=cpu1,host=skynet
cpu,cpu=cpu2,host=skynet
cpu,cpu=cpu3,host=skynet
disk,device=rootfs,fstype=rootfs,host=skynet,path=/
disk,device=sda1,fstype=ext4,host=skynet,path=/
disk,device=sda1,fstype=ext4,host=skynet,path=/var/lib/docker/aufs
diskio,host=skynet,name=sda
diskio,host=skynet,name=sda1
diskio,host=skynet,name=sda2
diskio,host=skynet,name=sda5
kernel,host=skynet
mem,host=skynet
processes,host=skynet
swap,host=skynet
system,host=skynet

>
>
> drop series where host='skynet'
>
>
> show series where host='skynet'
>
>


Add support --perf-basic-prof

Very basic PR, adding support for --perf-basic-prof v8 option.
This supports creating flamegraphs on linux with mocha tests.

What would it take to get this merged?

Thanks for the PR! Maybe add it to _mocha so that it'll be in the usage options returned by --help

@danielstjules - updated to take into account _mocha usage options.

@danielstjules anything I can do to facilitate a merge here. I couldn't find anymore information on places to follow up re:mocha.

Sorry for the delay! Thanks again!


Tensor parallelism issues

A couple issues with the new tensor parallelism implementation!

Tensor Parallelism doesn't appear to respect a lack of flash attention, even via the -nfa flag. It also doesn't document flash attention as a requirement, instead crashing on the first attempted inference run when flash attention isn't available. My hardware doesn't have support for flash attention, so it would be super cool if the tensor parallelism implementation could fall back to xformers or similar.

Attempting to run tensor parallelism without also supplying gpu-split appears to result in the code looking for amd memory on nvidia computers. Adding in -gs appears to fix this, but it didn't seem like intended behavior?

-- Options: ['tensor_parallel']
Traceback (most recent call last):
  File "/home/llama/opt/exllamav2/test_inference.py", line 100, in <module>
    model, tokenizer = model_init.init(
                       ^^^^^^^^^^^^^^^^
  File "/home/llama/opt/exllamav2/exllamav2/model_init.py", line 135, in init
    post_init_load(
  File "/home/llama/opt/exllamav2/exllamav2/model_init.py", line 168, in post_init_load
    model.load_tp(split, progress = progress)
  File "/home/llama/opt/exllamav2/exllamav2/model.py", line 373, in load_tp
    for item in f:
  File "/home/llama/opt/exllamav2/exllamav2/model.py", line 388, in load_tp_gen
    self.tp_context = TPContext(self, gpu_split, expect_cache_tokens, expect_cache_base)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/opt/exllamav2/exllamav2/tensor_p.py", line 84, in __init__
    self.define_split(gpu_split, expect_cache_tokens, expect_cache_base)
  File "/home/llama/opt/exllamav2/exllamav2/tensor_p.py", line 111, in define_split
    gpu_memory = get_all_gpu_memory()
                 ^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/opt/exllamav2/exllamav2/util.py", line 299, in get_all_gpu_memory
    amd_memory = get_amd_gpu_memory()
                 ^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/opt/exllamav2/exllamav2/util.py", line 259, in get_amd_gpu_memory
    result = subprocess.run(
             ^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/subprocess.py", line 548, in run
    with Popen(*popenargs, **kwargs) as process:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/subprocess.py", line 1026, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/subprocess.py", line 1955, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
PermissionError: [Errno 13] Permission denied: 'rocm-smi'

This check runs regardless on NVIDIA systems, and doesn't generally cause an issue. But it looks like you have an executable called rocm-smi in your path that you don't have the permissions to run. Which I hadn't accounted for.
I've changed it so that it should catch any exceptions from that check and you shouldn't have an issue. It's in the dev branch but a new release with this and a bunch more fixes is coming real soon.

After thinking about your response and the original error message a little, I managed to discover that I actually managed to add a directory my user doesn't have access to into PATH - That's the cause of the permission denied. The most dev commit still errors identically when this is the case, but does resolve correctly when the user running the software actually has permissions to their own PATH. Thanks/Sorry!
However, the rocm stuff is the far smaller of the two issues I mentioned. Here's a log of attempting to run inference without flash attention in the most recent dev:
$ python examples/chat.py -m /home/llama/mod/exl2/magnum-v2-123b-exl2/ -nfa -mode codellama -c8 -l 4096 -tp
 -- Model: /home/llama/mod/exl2/magnum-v2-123b-exl2/
 -- Options: ['tensor_parallel', 'length: 4096', 'no_flash_attn']
 -- Loading tokenizer...
 -- Loading model...
  Always answer as helpfully as possible.

User: Hi there! Please don't crash.

Traceback (most recent call last):
  File "/home/llama/opt/exllamav2/examples/chat.py", line 295, in <module>
    generator.begin_stream_ex(active_context, settings)
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/generator/streaming.py", line 363, in begin_stream_ex
    self._gen_begin_reuse(input_ids, gen_settings)
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/generator/streaming.py", line 731, in _gen_begin_reuse
    self._gen_begin(in_tokens, gen_settings)
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/generator/streaming.py", line 692, in _gen_begin
    self.model.forward(self.sequence_ids[:, :-1],
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/model.py", line 868, in forward
    r = self.forward_chunk(
        ^^^^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/model.py", line 976, in forward_chunk
    x = module.forward(x, cache = cache, attn_params = attn_params, past_len = past_len, loras = loras, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/attn.py", line 972, in forward
    return self.forward_tp(
           ^^^^^^^^^^^^^^^^
  File "/home/llama/.pyenv/versions/3.11.9/lib/python3.11/site-packages/exllamav2/attn.py", line 1143, in forward_tp
    ext_c.tp_attn_forward_(
ModuleNotFoundError: No module named 'flash_attn_2_cuda'

Oh, right, I guess this wasn't really communicated anywhere, I apologize for that. But the TP feature currently requires flash attn. :/
It's still a little experimental and unfinished, and I'll probably add SDPA support sometime soon, though it still won't work with the dynamic generator.

Right, I've pushed an update to the dev branch that should allow inference with TP mode even when flash-attn isn't available. It uses a slower code path for now so it's hard to say if you'll see any speedup. Torch SDPA is very limited (it's not just paged attn that's missing but also GQA support) but I'll see about further improving performance down the line.

No speedup, but it does function!
Running the following command on a 8x P100 machine: python test_inference.py -m /home/llama/mod/exl2/magnum-v2-123b-exl2/ -nfa -p "Once upon a time," -gs auto
With -tp:
-- Response generated in 55.37 seconds, 128 tokens, 2.31 tokens/second (includes prompt eval.)
Without -tp:
-- Response generated in 23.33 seconds, 128 tokens, 5.49 tokens/second (includes prompt eval.)
With -nxf:
-- Response generated in 23.25 seconds, 128 tokens, 5.50 tokens/second (includes prompt eval.)
For comparison, on my hardware, I'm used to getting around 8-10 tokens/second with a similar model in GPTQ running on whatever aphrodite engine uses for tensor parallelism.
I thought specifying -nxf might prompt exllamav2 to use sdpa, and thus help prove whether it was the lack of GQA support that hurt performance so much, but it didn't actually seem to affect performance at all.


Does flutters framework use any encryption which are not general encryptions like https?

Hi,
we want to upload a flutter app to the apple appstore and it should be downloaded from other countries than usa.
Just a simple question: Does flutter use any encryption algorithms which need to be reported to the us government?
I'm not talking about the annual self-classification report which has to be send to the nsa/bis every year when some kind of encryption is used (like https). I'm just talking about the kind of encryptions which are needing a CCATS (Commodity Classification Automated Tracking System) code before they are allowed to be published to the App Store.
I'm asking here because I think this is the "most official" place to ask a technical question like that.
Regards

I am not much aware about this, I'll keep this issue open for further insights from the team, although you may also try to ask this question on flutter discord server for faster response.

Thanks, I already asked my questions on the flutter discord server, unfortunately it seems like no one knows how to deal with this situation.

The encryptions that are used depends on which APIs you use, but in general the only encryption that Flutter apps will use are those for HTTPS, WebSocket, or secure sockets, as implemented by boringssl, which is the same library used by Android and Chrome.
If you have a specific encryption algorithm in mind please don't hesitate to reach out. I'm not sure we can help much more beyond that.


TypeError: callback is not a function

I'm getting following error intermittently:
TypeError: callback is not a function
at Query.handleResponse (/app/node_modules/node-mysql-deadlock-retries/index.js:47:11)
at Query. (/app/node_modules/mysql/lib/Connection.js:502:10)
at Query._callback (/app/node_modules/mysql/lib/Connection.js:468:16)
at Query.Sequence.end (/app/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24)
at Query._handleFinalResultPacket (/app/node_modules/mysql/lib/protocol/sequences/Query.js:139:8)
at Query.EofPacket (/app/node_modules/mysql/lib/protocol/sequences/Query.js:123:8)
at Protocol._parsePacket (/app/node_modules/mysql/lib/protocol/Protocol.js:278:23)
at Parser.write (/app/node_modules/mysql/lib/protocol/Parser.js:76:12)
at Protocol.write (/app/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket. (/app/node_modules/mysql/lib/Connection.js:91:28)
at Socket. (/app/node_modules/mysql/lib/Connection.js:502:10)
at Socket.emit (events.js:182:13)
at Socket.EventEmitter.emit (domain.js:442:20)
at addChunk (_stream_readable.js:283:12)
at readableAddChunk (_stream_readable.js:264:11)
at Socket.Readable.push (_stream_readable.js:219:10)
This is causing my node server to crash. How to resolve this?

This is difficult to answer for me without seeing more code. It seems like you passed something that is not a callback as the third parameter to query.

This is difficult to answer for me without seeing more code. It seems like you passed something that is not a callback as the third parameter to query.


use strict: command not found when @schuchard/prettier installed after prettier.

Describe the bug
The bug manifests when @schuchard/prettier is installed after prettier.  In my scenario, I was doing it through npm ci on a build machine, but you can run npm i prettier && npm i @schuchard/prettier to replicate it.
The output is:
$ npx prettier --write "**/*.{js,json,css,md,ts,html,component.html}"
/source/test/node_modules/.bin/prettier: line 1: use strict: command not found
/source/test/node_modules/.bin/prettier: line 2: syntax error near unexpected token `exports,'
/source/test/node_modules/.bin/prettier: line 2: `Object.defineProperty(exports, "__esModule", { value: true });'

To Reproduce
Steps to reproduce the behavior:

npm i prettier && npm i @schuchard/prettier
npx prettier --write "**/*.{js,json,css,md,ts,html,component.html}"
See error

Expected behavior
Prettier runs as expected
Desktop (please complete the following information):

OS: MacOS
Node Version 12
Angular & Angular/CLI Version

Additional context
From my investigation, it appears that this library is overwriting the symlink for prettier in node_modules/.bin/prettier.
By doing an ls -ahl node_modules/.bin/prettier you can see where the symlinks point.
After prettier is installed: prettier -> ../prettier/bin-prettier.js after
After @schuchard/prettier is installed: prettier -><EMAIL_ADDRESS>Now I'm not sure what the actual bug is.  Whether it is that the prettier symlink is being overwritten, or that the script file that it is linking to doesn't have the proper #!/usr/bin/env node as the npm bin docs says to do.
My intuition is that the prettier library bin symlink shouldn't be overwritten.

Hi @pierceray, please refer to the readme for install instructions. This library is intended to be installed as a schematic with ng add @schuchard/prettier

Closing for now, let me know if you're still seeing an issue after running the schematic with ng add. Thanks.

Same issue. I deleted existing .prettierignore and prettier.config.js, ran npx ng add @schuchard/prettier and still get the error.
You can check it out at https://github.com/abraham/slides-today/pull/1771

I see this when updating from 4.0.0 to 5.0.0 of this library in the package.json. Should I be using ng update instead?

Hrm, that didn't work
ERROR! .prettierignore already exists.
ERROR! prettier.config.js already exists.
The Schematic workflow failed. See above.

I tried to reinstall prettier and got this error:
npm i prettier --save-dev
npm WARN rm not removing /Users/splaktar/Git/pink-summit/onscene-rms-nextgen/node_modules/.bin/prettier as it wasn't installed by /Users/splaktar/Git/pink-summit/onscene-rms-nextgen/node_modules/prettier

Doing rm node_modules/.bin/prettier and then npm i prettier --save-dev again fixed it. I agree with the OP that this schematic should not be overwriting the prettier symlink.


Bug report : Trying to pull config from the wrong folder

Describe the bug
I'm using a server host (HumbleServers), which uses Pterodactyl for its game management. My servers' mods including this one are stored in /home/container/mods/ and configs in /home/container/config/, but if I try to run the Jar on its own for its terminal interface, it fails to load because it's expecting the properties file to be in /home/config/, skipping over the container folder.
Note: It does correctly create the properties file in the correction location (/home/container/config/AdvancedBackups.properties) when the game server is run.
Pterodactyl doesn't allow users to access the /home/ folder, so making a copy of my config folder there is not an option.
Advanced Backups - Version 3.4
Note : this cannot restore backups made prior to the 3.0 release.
Searching for properties...ERROR LOADING PROPERTIES!
java.io.FileNotFoundException: /home/config/AdvancedBackups.properties (No such file or directory)
        at java.base/java.io.FileInputStream.open0(Native Method)
        at java.base/java.io.FileInputStream.open(FileInputStream.java:216)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
        at java.base/java.io.FileReader.<init>(FileReader.java:75)
        at co.uk.mommyheather.advancedbackups.cli.AdvancedBackupsCLI.main(AdvancedBackupsCLI.java:64)

Ensure you're running this from within the mods directory, and the config file is in the parent directory!

To Reproduce
Steps to reproduce the behavior:

Place AdvancedBackups' jar in /home/container/mods/
In the Startup tab, switch the Server Jar File from the minecraft server jar, to the mod's jar.
Launch the server.
See error.

Expected behavior
It to correctly find the config and allow me to use the terminal interface.
Versioning (please complete the following information):

OS: Unknown (I'm guessing something Linux based? I know that this server is running in a container.)
Minecraft Version(s): 1.20.1
Modloader(s): Fabric
Mod Version: 3.4

Additional context
What I believe is going on is its starting directory is up 1 level from the mods'. This would make sense given Pterodactyl is probably expecting to run whatever jar it's given from the container folder. If that's the case, then the solution should be as simple as adding more checks for config locations. Instead of just ../config/AdvancedBackups.properties, also check /config/AdvancedBackups.properties.
My full startup tab in Pterodactyl:

Hmm.
This is a bit of a tricky one with the current architecture, as there's a fair bit more than config discovery that relies on cwd.
Are you able to modify the startup command itself? If so, you could add a cd to the start and remove the mods/ from the path to the jar.
If not, I'd suggest running the manual restoration steps.
I'll likely be rewriting the commandline the update after next (so, 3.6), so I'll fix this bug then.


Change file permission to '0644'

Projects like https://github.com/coreos/coreos-vagrant YAML.load and YAML.dump the cloud-config which changes octal 0644 to decimal 420, which is inconvenient if you prefer configs consistently use the same radix.

Thank you!


[not mergeable yet] simplejit to jit

Status: does not build yet since the cranelift-jit crate has not yet been updated on crates.io (see: https://github.com/bytecodealliance/simplejit-demo/issues/50#issuecomment-752280532)
Updating the demo to use the updated cranelift-jit module since stuff has been renamed from SimpleJIT to JIT.
We probably also want to change this package name from simplejit-demo to jit-demo, but someone with repo permissions will likely have to do that.
This PR (plus changing the repo and package name from simplejit-demo to jit-demo should close https://github.com/bytecodealliance/simplejit-demo/issues/50

Thanks for putting this together! I've now renamed the repo to cranelift-jit-demo. For the package name, I think you can just change the package name in the Cargo.toml in this PR, since this demo isn't published on crates.io. Then once the cranelift-jit packages are published, we can merge this.

Thanks for putting this together! I've now renamed the repo to cranelift-jit-demo. For the package name, I think you can just change the package name in the Cargo.toml in this PR, since this demo isn't published on crates.io. Then once the cranelift-jit packages are published, we can merge this.

Hi @sunfishcode, I see cranelift-jit is now in crates.io, also I noticed the dependencies have been updated to 0.69.0 so I added that change in too. I finally just got my laptop back from repairs so I'll get this building locally as a sanity check after which I think we should be ready to merge!

Hi @sunfishcode, I see cranelift-jit is now in crates.io, also I noticed the dependencies have been updated to 0.69.0 so I added that change in too. I finally just got my laptop back from repairs so I'll get this building locally as a sanity check after which I think we should be ready to merge!

Cool, thanks!

Cool, thanks!


ffmpeg: info.sample_bits will never be 24?

See my comment at https://github.com/pyglet/pyglet/commit/31a8decabc60e2161f0e73c1cd5595ae4dc862fc#r55150984

The FFmpeg decoder needs more work to support 24bit audio.
This is because FFmpeg always pads the sample packets to 32bit, when decoding 24bit samples.
Starting here, we incorrectly assuming that a 32bit AV_SAMPLE_FMT always means a 32bits of decoded audio:
https://github.com/pyglet/pyglet/blob/31a8decabc60e2161f0e73c1cd5595ae4dc862fc/pyglet/media/codecs/ffmpeg.py#L270
Instead of info.sample_bits = 32, we should instead be using info.sample_bits = context.bits_per_raw_sample.
That by itself won't fix it,  because the decoded sample packets will still be padded. Something like:
|--pad-| |-------audio data-------|
00000000 00000000 00000000 00000000

I did a quick hack in the past, and by slicing the final byte data it will play correctly.
I think more information needs to be passed down the chain, so that we know when slicing is necessory or not.

But what is the problem with having it padded within a 32 packet? If I allow info.sample_bits to be 32, then it seems Pyglet plays 24 bit files just fine. What am I missing here?

Does it look like at this stage, it's truncating it down to 24bit packets?
https://github.com/pyglet/pyglet/blob/31a8decabc60e2161f0e73c1cd5595ae4dc862fc/pyglet/media/codecs/ffmpeg.py#L741
It didn't play correctly for me the last time I tried it, but I can't remember what I did at that time.

No it doesn't, but it was my understanding that this is also not necessary, as most drivers can deal with padded packages and will simply truncate to receive the 24 bit data themselves. At least this is what I understood from some reading. I of course might be wrong, though.
When I tested it, it seemed to work fine on Windows with the DirectSound driver. It might work with PulseAudio as well.
Maybe more importantly:
It is also my understanding that OpenAL does not support 24 bit at all. I think in this case it would be a good idea to figure out how to enable dithering in FFmpeg when resampling to 16 bit (see also my post here: https://github.com/pyglet/pyglet/issues/419). Dithering (with noise shaping) would preserve the (perceived) extended dynamic range of the 24 bit data while allowing playback at 16 bit. Currently, Pyglet just resamples without dithering, which also introduces quantization errors/noise.


fix: bump edge-runtime to 1.55.1

What kind of change does this PR introduce?
Bump edge-runtime to 1.55.1
Changes
1.55.1 (2024-07-30)
Bug Fixes

revisit MemCheck related logics (#380) (0ff7ce0)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>6
Details

0 of 0   changed or added relevant lines in 0 files are covered.
7 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.03%) to 59.718%

Files with Coverage Reduction
New Missed Lines
%

internal/storage/rm/rm.go
2
89.53%

internal/gen/keys/keys.go
5
12.9%

Totals

Change from base Build<PHONE_NUMBER>6:
-0.03%

Covered Lines:
6194

Relevant Lines:
10372

💛  - Coveralls

This PR is stale, but I'm not closing it and will leave this to @sweatybridge 😋


Show profile as an interactive 3D plot

https://www.profilmonline.com/ has the ability to show interactive 3D plots,
which can be rotated. This would also be nice for TopoBank.
A simple implementation could be maybe done with http://visjs.org/graph3d_examples.html (if it's okay to transfer all data to client). Maybe (Dash)[https://plot.ly/products/dash/] is also interesting, they also support 3D visualizations: https://dash-gallery.plotly.host/dash-yield-curve/

Related to #679

I am closing this as we are now moving to Openseadragon


Schedule funnies

Hi Werner,
Awesome integration, thanks again!
Interesting one, looking at my ESP app on my phone it shows my next slot to be at 10pm tonight, looking at the integration schedule i get these weird 30min slots after level changes at 4pm, why would that be?
See screenshot for 30min slot at 4pm today, tomorrow and Thursday.

Mmm, looking at ESP API Area information query with Postman, I can see it would have had a slot form 2:00pm - 4:30pm if stage 4 had been in effect at 2:00pm, yet it was not, so this 30 min slot should be stripped out, since Eskom does not apply it that way?

Stage 4 only starts at 16:00, so your 14:00-16:30 slot is only really from 16:00-16:00.  You will generally not have load shedding then.
Change to 31m and it should remove that entry.

Not really the same issue. In the case of #74 there was load shedding schedule before and after the stage change, so this plugin incorrectly hid the 14h-16h part.

Not really the same issue. In the case of #74 there was load shedding schedule before and after the stage change, so this plugin incorrectly hid the 14h-16h part.

Works as intended. https://github.com/wernerhp/ha.integration.load_shedding/issues/74#issuecomment-1697645475


Open terminal on the active screen from windows explorer

Description of the new feature/enhancement
When I right click in a folder and click 'Open in Terminal' it always opens on the main screen while I have the explorer opened on the second or third screen.
Please open the terminal or on the latest screen it was open, or on the screen from where I open the terminal.
Proposed technical implementation details (optional)

First, I applaud and support this idea.
Having multiple monitors makes this annoying to not have it.
I frequently use keystrokes to open a terminal from some app (like VsCode) whose window is the keyboard input focus.
The behavior I desire/expect is that the terminal will open up on the same monitor and position itself reasonably in relation to the focused window application from which the launch request was triggered.
As it is now, I can only solve this by moving around the windows setting of my main monitor, or define an AUTO-HOT-KEYS trick to reposition the terminal after it is located ⟨once it is in the foreground⟩.
💯 🤔 🙏


Next

Pull Request Details

Description

Related Issue

Motivation and Context

How Has This Been Tested

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[ ] 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 change)

Checklist

[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My commit messages are styled with gitmoji
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Codecov Report
Patch coverage: 100.00% and project coverage change: -0.05 :warning:

Comparison is base (ae80d1d) 27.38% compared to head (46e4161) 27.34%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #159      +/-   ##
==========================================
- Coverage   27.38%   27.34%   -0.05%
==========================================
  Files          19       19
  Lines        1738     1737       -1
==========================================
- Hits          476      475       -1
  Misses       1213     1213
  Partials       49       49

Impacted Files
Coverage Δ

cmd/contributors.go
82.97% <100.00%> (-0.36%)
:arrow_down:

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


Question about single_transformer_blocks

I'm wondering why single_transformer_blocks was set as.
net.single_transformer_blocks = torch.nn.ModuleList([])

while the original diffusers code was
        self.single_transformer_blocks = nn.ModuleList(
            [
                FluxSingleTransformerBlock(
                    dim=self.inner_dim,
                    num_attention_heads=self.config.num_attention_heads,
                    attention_head_dim=self.config.attention_head_dim,
                )
                for i in range(self.config.num_single_layers)
            ]
        )

Why don't we treat it the same as transformer_blocks?

The FluxSingleTransformerBlock has been implemented in FLuxModel https://github.com/mit-han-lab/nunchaku/blob/main/src/FluxModel.cpp#L619

Thanks a lot.


NSInternalInconsistencyException

Hi, thank u for the new chat behaviour.
I faced with crash on your example app, you can reproduce it, if replace your code in DefaultChatController
Reason: invalid number of sections. The number of sections contained in the collection view after the update (170) must be equal to the number of sections contained in the collection view before the update (89), plus or minus the number of sections inserted or deleted (0 inserted, 1 deleted).
change line 147
DispatchQueue.main.async { [weak self] in
    guard self != nil else {
        return
    }
    completion([Section(id: 0, title: "Loading...", cells: Array(cells))])
}

to
DispatchQueue.main.async { [weak self] in
    guard self != nil else {
        return
    }

    let sections = Array(cells).map { cell in
        Section(id: cell.differenceIdentifier, title: "New Section", cells: [cell])
    }

    completion(sections)
}

@iBachek Morning. I am not sure why you did that modification in the first place - you wrapped each cell into a section. The Example app doesn't support more then one section. If you need more then one section - you will have to modify the entire app.
PS: About supplementary views in general see https://github.com/ekazaev/ChatLayout#about-supplementary-views

@ekazaev section header header has a visibility behavior when scrolling and snapping to the top, this is necessary to separate messages by date

@iBachek Morning. I am not sure why you did that modification in the first place - you wrapped each cell into a section. The Example app doesn't support more then one section. If you need more then one section - you will have to modify the other parts of the app.
PS: About supplementary views in general see https://github.com/ekazaev/ChatLayout#about-supplementary-views

what parts do you mean?

Firstly. This doesnt discount my comment above. If you want to have more then one section - you need to modify the rest of the app.
Secondly: Snapping header to the top is not supported by the layout itself. So if you need this behavior you'll need to implement it yourself. My assumption is that you need to create a fake date view at the top of the container view that will hold your collection view and track the visibility of the date cell within the collection view and if it is above the top boundary of the collection view - make your fake date view visible.
See also https://github.com/ekazaev/ChatLayout/issues/18

About what parts to modify: At least you need to comment out the scrolling to the last item in ChatViewController line 470 as there is an incorrect calculation. Then it should work:

Then you need to fix your code in the way you are currently using difference identifier for the section. In your current variant you are making update operations over entire section. Basically you reload entire section with all the cells inside and and its headers and footers. So you will see small jumps in the UI.


Helm 3 resources apiVersion update

Output of helm version:
Helm 3.0.2
Helm 3 doesn't provide any way to recreate resources after update apiVersion.
Error: UPGRADE FAILED: rendered manifests contain a new resource that already exists. Unable to continue with update: existing resource conflict: kind: Deployment, namespace: dev, name: dummy-dev

helm.go:76: [debug] existing resource conflict: kind: Deployment, namespace: dev, name: dummy-dev
rendered manifests contain a new resource that already exists. Unable to continue with update

Kubernetes provide kubectl convert
example:
kubectl convert -f ./my-deployment.yaml --output-version apps/v1
Is it possible integrate in Helm 3 with additional flag for migration to new apiVersion?

Kubernetes suggest use kubectl convert but looks like it is show up the same error, testing on kubernetes 1.14.9


Handling onKeypress, onEnter, onLeave, onClick, onFocus, onBlur, onChange etc.

Lets discuss how can we deal with this. Angular 1 formly had this to tackle it, but we don't have anything in place yet.
     {
        key: 'text1',
        type: 'input',
        templateOptions: {
          onKeypress: function($viewValue, $modelValue, scope) {
            console.log('The key was pressed!', $viewValue);
          }
        }
      }

Did that merge fix onChange? I don't see anything in the diff. I am trying a select with onChange right now and it isn't working
"ng2-formly": "^2.0.0-beta.13",

@mohammedzamakhan  I want to call a function on click of particular key. How can I achieve that ?


MAJOR BUG: New user configuration file each time a command is ran.

Suspected cause: Faulty configuration file checker.
Fault: A new file allegedly is created each time CheckConfig(); is ran in configs.hpp.

Affects leveling system.

YIIIKES

Leveling is not affected by this*

Good

A new file gets created every time a command is ran by a user due to a faulty configuration file checker.


twkhtmltopdf: <IP_ADDRESS> -> <IP_ADDRESS>.

Things done:

[ ] Tested using sandboxing (nix-build --option build-use-chroot true or nix.useChroot on NixOS)
Built on platform(s)

[x] NixOS
[ ] OS X
[x] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

More
Fixes issue #
cc @jb55

Please note, that points are not mandatory, but rather desired.
Necessary to build against the QT in nix.

The log length has exceeded the limit of 4 MB (this usually means that the test suite is raising the same exception over and over).

The job has been terminated

Building this takes ~1.5 hours on a fast-ish machine so unlikely that travis will ever finish this

I was just about to do a PR for this https://github.com/jb55/nixpkgs/commit/56ff791a543d887db21daf36f0837736818109ce which fixes a compile issue on 16.03 as well

Closing this in favour of yours, thanks

I've only tested on 16.03, just going to do a quick test on master then do a PR


Fix some file descriptor / tmp file leaks

Extend Closeable in Container and modify BasicContainer to close all
child boxes when it is closed, giving all child boxes a chance to
release any resources that they hold.
Prevent new IsoFile(String) and new IsoFile(File) from leaking file
descriptors by implementing Closeable and ensuring that FileInputStream
reference is stored and closed when IsoFile is closed.
Prevent MediaDataBox from exhausting space in /tmp by removing
disk-buffered data file when IsoFile is closed.
Convert some stream definitions to use Java 7 try-with-resources syntax
Remove superfluous explicit toString invocations for string concatenation

@sannies any thoughts on this patch?
Fixing the various resource leaks makes the code more robust for production use cases.
It also makes it a lot easier to work with IsoFile in a process that runs for a long time (i.e. a web application), since a consumer only needs to ensure that it closes the IsoFile when it is done with it, versus needing to dig into the internal fields of the MediaDataBox using reflection so that it can delete the temporary files that are left behind.

+1 on integrating the patch, if possible. We are also running into this issue.
This also seems to be same issue: https://github.com/sannies/mp4parser/issues/315

Yes, I believe this is a reasonable fix for #315, at least until a better design is implemented for reading the mdat contents without copying the data into a separate file.
Fixing it more elegantly (by avoiding the file copy) was going to require quite a bit more thought, so I did this so that I could get rid of the hacky reflection code that I had written in my application to delete the files that the MediaDataBox was leaving behind.

@sannies I finally got around to making this patch a bit slimmer. Any interest in merging it?


Loosen retry bucket functional test checks

This test fails on travis occasionally, this loosens the assertion to make the test a little more robust.

Codecov Report

Merging #2071 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop    #2071   +/-   ##
========================================
  Coverage    93.06%   93.06%
========================================
  Files           60       60
  Lines        11003    11003
========================================
  Hits         10240    10240
  Misses         763      763

Continue to review full report at Codecov.

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


weylus: fix build with rust 1.61

Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

@ofborg build weylus

@ofborg build weylus

@ofborg build weylus

If we update to an unstable version in https://github.com/NixOS/nixpkgs/pull/174434 then the patch wouldn't be needed, no?

Yes.


debounce not work in Svelte component

When used inside Svelte Component, the debounce function calls the source function immediately, ignoring the delay.
I'm not sure if this is related to Svelte or Radash, but since the lodash's debounce version works fine, I'm just posting it here first.
Please check out this REPL for example & issue reproduction.

Sorry, it seem that I called the cancel() function first, which permanently stops the debounce feature 😔


[SPARK-10287] [SQL] Fixes JSONRelation refreshing on read path

https://issues.apache.org/jira/browse/SPARK-10287
After porting json to HadoopFsRelation, it seems hard to keep the behavior of picking up new files automatically for JSON. This PR removes this behavior, so JSON is consistent with others (ORC and Parquet).

@liancheng Maybe it is better to make JSON, Parquet, and ORC consistent instead of fixing JSON's refresh problem.

Merged build triggered.

Merged build started.

Test build #41650 has started for   PR 8469 at commit acec3ca.

LGTM. We should mention this in the release note and migration guide.

Test build #41650 has finished for   PR 8469 at commit acec3ca.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41650/
Test PASSed.

I will test it with my partitioned JSON table.

It works. I will update doc.

Merged build triggered.

Merged build started.

Test build #41705 has started for   PR 8469 at commit dead685.

Test build #41705 has finished for   PR 8469 at commit dead685.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41705/
Test FAILed.

Test build #1698 has started for   PR 8469 at commit dead685.

Test build #1698 has finished for   PR 8469 at commit dead685.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class LogisticRegressionModel @Since("1.3.0") (
class SVMModel @Since("1.1.0") (
class GaussianMixtureModel @Since("1.3.0") (
class KMeansModel @Since("1.1.0") (@Since("1.0.0") val clusterCenters: Array[Vector])
class PowerIterationClusteringModel @Since("1.3.0") (
class StreamingKMeansModel @Since("1.2.0") (
class StreamingKMeans @Since("1.2.0") (
class BinaryClassificationMetrics @Since("1.3.0") (
class MulticlassMetrics @Since("1.1.0") (predictionAndLabels: RDD[(Double, Double)])
class MultilabelMetrics @Since("1.2.0") (predictionAndLabels: RDD[(Array[Double], Array[Double])])
class RegressionMetrics @Since("1.2.0") (
class ChiSqSelectorModel @Since("1.3.0") (
class ChiSqSelector @Since("1.3.0") (
class ElementwiseProduct @Since("1.4.0") (
class IDF @Since("1.2.0") (@Since("1.2.0") val minDocFreq: Int)
class Normalizer @Since("1.1.0") (p: Double) extends VectorTransformer
class PCA @Since("1.4.0") (@Since("1.4.0") val k: Int)
class StandardScaler @Since("1.1.0") (withMean: Boolean, withStd: Boolean) extends Logging
class StandardScalerModel @Since("1.3.0") (
class FPGrowthModel[Item: ClassTag] @Since("1.3.0") (
  class FreqItemset[Item] @Since("1.3.0") (
  class FreqSequence[Item] @Since("1.5.0") (
class PrefixSpanModel[Item] @Since("1.5.0") (
class DenseMatrix @Since("1.3.0") (
class SparseMatrix @Since("1.3.0") (
class DenseVector @Since("1.0.0") (
class SparseVector @Since("1.0.0") (
class BlockMatrix @Since("1.3.0") (
class CoordinateMatrix @Since("1.0.0") (
class IndexedRowMatrix @Since("1.0.0") (
class RowMatrix @Since("1.0.0") (
class PoissonGenerator @Since("1.1.0") (
class ExponentialGenerator @Since("1.3.0") (
class GammaGenerator @Since("1.3.0") (
class LogNormalGenerator @Since("1.3.0") (
case class Rating @Since("0.8.0") (
class MatrixFactorizationModel @Since("0.8.0") (
abstract class GeneralizedLinearModel @Since("1.0.0") (
class IsotonicRegressionModel @Since("1.3.0") (
case class LabeledPoint @Since("1.0.0") (
class LassoModel @Since("1.1.0") (
class LinearRegressionModel @Since("1.1.0") (
class RidgeRegressionModel @Since("1.1.0") (
class MultivariateGaussian @Since("1.3.0") (
case class BoostingStrategy @Since("1.4.0") (
class Strategy @Since("1.3.0") (
class DecisionTreeModel @Since("1.0.0") (
class Node @Since("1.2.0") (
class Predict @Since("1.2.0") (
class RandomForestModel @Since("1.2.0") (
class GradientBoostedTreesModel @Since("1.2.0") (
abstract class SetOperation(left: LogicalPlan, right: LogicalPlan) extends BinaryNode
case class Union(left: LogicalPlan, right: LogicalPlan) extends SetOperation(left, right)
case class Intersect(left: LogicalPlan, right: LogicalPlan) extends SetOperation(left, right)
case class Except(left: LogicalPlan, right: LogicalPlan) extends SetOperation(left, right)

I am merging it to master and branch 1.5.


API: Rename volatility to sigma in Brownian (close #210)

Codecov Report

Merging #231 (ec5925a) into develop (def4d98) will decrease coverage by 0.07%.
The diff coverage is 91.66%.

@@             Coverage Diff             @@
##           develop     #231      +/-   ##
===========================================
- Coverage   100.00%   99.92%   -0.08%
===========================================
  Files           42       42
  Lines         1300     1296       -4
===========================================
- Hits          1300     1295       -5
- Misses           0        1       +1

Impacted Files
Coverage Δ

pfhedge/instruments/primary/brownian.py
97.61% <87.50%> (-2.39%)
:arrow_down:

pfhedge/features/features.py
100.00% <100.00%> (ø)

pfhedge/features/functional.py
100.00% <100.00%> (ø)

pfhedge/stochastic/brownian.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


JQ filtering inconsistency?

When designing a JQ filter, I wanted to make it apply only on some given condition. I used condition keyword. However, it has a bit different behavior than the expression itself. The condition is by default applied at the level of the array rather than at root. This configuration snippet is an example:
processors:
  proc1:
     event-jq:
       condition: has("values")
       expression: .[].values |= with_entries(select(.key | test("route/protocol-name|route/prefix$|route/prefix-length-xr|interface-name")))

In the expression I need to specify .[], but for the condition I just need to write has("values") rather than .[] | has("values"). Same as I expected any(has("values")) to work, but it doesn't. Is this a design choice? Wouldn't this cause some issues for more advanced cases where the array has more than one element?

That is by design.
The condition is evaluated against each individual event message within a group. For the processor logic to be applied, the condition must be true for at least one event message in the group. This approach ensures that if any single update within a gNMI notification meets the criteria, the associated processing logic is triggered for the entire group of events.
The expression operates on the entire collection of event messages as a single entity. It allows for the combination of tags or the consolidation of values from separate messages.


Failed to load bundle. Unable to resolve module path. Module pathdoes not exist in the Haste Module map

I was adding style to a part of my project, I was saving and reloading every line, after I added a position: ´absolute´ the project stopped working. I do not think the styles are related to this, but just in case...
This is the screenshot:

I have tried all the possible solutions that the screenshot suggests, restart the computer and I got nothing, I am still facing the same error screen
React Native version:
React Native Environment Info:
System:
OS: macOS 10.14.3
CPU: (4) x64 Intel(R) Core(TM) i5-5575R CPU @ 2.80GHz
Memory: 177.15 MB / 8.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 11.10.0 - /usr/local/bin/node
Yarn: 1.13.0 - /usr/local/bin/yarn
npm: 6.9.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
IDEs:
Xcode: 10.1/10B61 - /usr/bin/xcodebuild
npmPackages:
react: 16.6.3 => 16.6.3
react-native: 0.58.5 => 0.58.5
npmGlobalPackages:
create-react-native-app: 2.0.2
react-native-cli: 2.0.1
react-native-git-upgrade: 0.2.7
Steps To Reproduce
I was adding style and suddenly stopped working
I was adding style and suddenly stopped working
Describe what you expected to happen:
I just want it to work, need to finish a school project :(
Snack, code example, or link to a repository:
The code was running perfectly and suddenly stopped working

It is the latest version


chore: add @janrtvld to maintainers

Add @janrtvld to maintainers as discussed in Discord.
Signed-off-by: Timo Glastra<EMAIL_ADDRESS>

Codecov Report

Merging #1016 (2c5e682) into main (4ca56f6) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1016   +/-   ##
=======================================
  Coverage   88.75%   88.75%
=======================================
  Files         520      520
  Lines       12085    12085
  Branches     1994     1994
=======================================
  Hits        10726    10726
  Misses       1297     1297
  Partials       62       62

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


Don't hard fail on breaking changes until future version 1.0.0.

Our intent is that our next SDK version will expose the new fields and allow for a transition period, and 2 releases from now is when we would actually start enforcing them, so we need our semver filters to reflect that.
PTAL @dweitzman-codaio @huayang-codaio @alexd-codaio @coda/packs

how does this work with our next release if we don't want to enforce the breaking changes for 2 more releaes? Is the thinking that we'd bump this number after the next release to our future "breaking changes" one?

how does this work with our next release if we don't want to enforce the breaking changes for 2 more releaes? Is the thinking that we'd bump this number after the next release to our future "breaking changes" one?

The next release (intended to be 0.10, but there was some wonkiness on the coda side, so it'll likely be 0.11) will expose all the new properties and features, so folks can start using them, but not require them. The logic to show deprecation warnings will apply every schema extension in packMetadataSchemaBySdkVersion regardless of SDK version and generate warnings. So when people upgrade to 0.11 they'll be able to see warnings, and switch to new fields at their leisure, but not get any hard errors. Only when they upgrade to 1.0 will we enforce these as errors.


Pin default operator_image and operator_helm_chart versions

Context
This  PR  for branch release/v0.17.x locks the operator ECR image to v0.45.0 and pinned opentelemetry-operator helm chart to 0.6.4.  These are defined in variables.tf under here.
Issues to work on
For further releases we need to dynamically update these variables to test the collector to the right version of the operator. As we port these changes to the main terraform we have to:

Set default values to latest ( to get the latest versions of the operator and helm chart )
Update the workflow to pass the desired variables through CLI.

This issue is no longer required. Operator versions are now derived from the collector go.mod file during the CI setup process.


Improve logging and add check for unused constants

This PR:

adds a check for constants not used in the model but provided in constants
Overhauls how we emit standard logging messages
improves checking of missing indexes in myfun()[,1] and (myfun())[,1] to allow these cases. It also ensures that indices in arguments to myfun in  myfun(k[,1])[,1] are checked. See issue #1108 for some discussion of this.

I didn't intend for the commits for item 3 above to be in this branch but somehow they ended up here.
It's not clear why this can't be automatically merged (I can merge via the commandline with no conflicts), so I'm putting in the PR to get tests to run and will then merge manually.

With bullet item 3 it turns out I did end up with a weird merge conflict with stuff being in devel that I thought was there but then didn't seem to be there and then was there. I think things are ok now.

Yeah item 3 was in commit 9875c38, which was merged into devel last night via PR #1156

I pulled the constants check out for now because it was flagging variables used in definition time if-then-else; see NCT issue 319.


Added "primary" & "secondary" props to Fab components

Addresses #519

@prateekbh is it supposed to be that the user needs to use className instead of class?

@YePpHa As i see it for now, yes thats a presumption

Okay, I will approve this then.


Update CONTRIBUTORS

@officialbidisha Please, made this change in https://github.com/shaka-project/shaka-player/pull/5357. Thanks!


Adding navigationController property to NSViewController-instances

I've added a navigationController property on NSViewController-instances, so the navigation controller is easily accessible from view controllers contained within a navigation controller.

Looks promising. Why did you remove "[controller respondsToSelector: @selector(setNavigationController:)]" in your cleanup commit?

Because it always should actually respond to that selector. The only case I can think of where it does not respond is when the category is not loaded properly.
Actually this pull request is basically bringing up the same functionality like the pull request #2. No need to pull both of them.

Ok. If you want to have a look, I kind of merged both of the PR here https://github.com/bfolder/BFNavigationController/tree/parent-navigation. I retained the 'respondsToSelector' checks though.


Does this work on version beyond "0.9.8" of pysigma?

Latest pysigma is 0.10.6 and this causes incompatibility issues with the Cortex XDR plugin.

Thanks for the heads up, @iamtimroberts ! Version 0.1.2 of this plugin is now available and should resolve that issue. From my testing, it looked like the version dependencies listed in pyproject.toml were the only items needed to be changed for this plugin to work with pySigma 0.10.X but let me know if that's not the case and you still run into issues.


Build pipelines for Nephio artifacts

Build the docker images for functions/controllers/operators in various repos (Nephio, free5gc, NF deployment)
Push the images to official docker registry.
How/where  do we store the credentials for the docker registry in Prow?

https://github.com/nephio-project/test-infra/pull/36


Google_Service_Exception (401)

I am trying to use this library to list my live youtube streaming but I am getting 'Login Required' error. Please find the attached class, I am using Laravel 5.5.
namespace App\Http\Controllers;
use Google_Client;
use Google_Service_YouTube;

class StreamingController extends Controller
{

    const OAUTH2_CLIENT_ID      = 'xxxx';
    const OAUTH2_CLIENT_SECRET = 'xxxx';
    const DEVELOPER_KEY = 'xxxx';
    const REDIRECT_URL  = 'xxxx';
    const APPNAME       = "xxxx";

    public function index()
    {

        $client = new Google_Client();
        $client->setClientId(self::OAUTH2_CLIENT_ID);
        $client->setClientSecret(self::OAUTH2_CLIENT_SECRET);
        $client->setDeveloperKey(self::DEVELOPER_KEY);
        $client->setRedirectUri(self::REDIRECT_URL);
        $client->setApplicationName( self::APPNAME );
        $client->setAccessType('offline'); //Added for Refresh Token
        $client->setApprovalPrompt('force'); //Added for Refresh Token
        $client->setScopes('https://www.googleapis.com/auth/youtube.liveStreams.list');

        if (isset($_GET['code'])) {
            $client->authenticate($_GET['code']);
            $_SESSION['access_token'] = $client->getAccessToken();
            $redirect = 'http://' . self::REDIRECT_URL;
            header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL));
        }

        if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
            $client->setAccessToken($_SESSION['access_token']);
        }

        // Define an object that will be used to make all API requests.

        $youtube = new Google_Service_YouTube($client);
        $liveStream = $youtube->liveStreams->listLiveStreams('id,snippet', array( 'mine' => 'true') );

        dd( $liveStream );

    }

}

I just took a peek at that API endpoint in API explorer and it looks like you need the following scopes:

https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl
https://www.googleapis.com/auth/youtube.readonly

$client->setScopes('https://www.googleapis.com/auth/youtube https://www.googleapis.com/auth/youtube.force-ssl https://www.googleapis.com/auth/youtube.readonly');

Also see https://developers.google.com/youtube/v3/live/docs/liveStreams/list

As an aside, I noticed you are using both OAuth and developer key auth. You don't need both and can delete the developer key lines.

I have taken off the API key and modified the setScope as advised the error doesn't go away. Is this supposed to work in this context ?
Google_Service_Exception (401)
{ "error": { "errors": [ { "domain": "global", "reason": "required", "message": "Login Required", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Login Required" } }

I have reused the code from https://developers.google.com/youtube/v3/live/docs/liveStreams/list , the $client->getAccessToken() is returning null so it cannot work. Is this library supposed to work for this use case?
    $client = new Google_Client();
    $client->setClientId(self::OAUTH2_CLIENT_ID);
    $client->setClientSecret( self::OAUTH2_CLIENT_SECRET);
    $client->setScopes('https://www.googleapis.com/auth/youtube');
    $redirect = filter_var('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'],
        FILTER_SANITIZE_URL);
    $client->setRedirectUri($redirect);

    // Define an object that will be used to make all API requests.
    $youtube = new Google_Service_YouTube($client);

    // Check if an auth token exists for the required scopes
    $tokenSessionKey = 'token-' . $client->prepareScopes();
    if (isset($_GET['code'])) {
        if (strval($_SESSION['state']) !== strval($_GET['state'])) {
            die('The session state did not match.');
        }

        $client->authenticate($_GET['code']);
        $_SESSION[$tokenSessionKey] = $client->getAccessToken();
        header('Location: ' . $redirect);
    }

    if (isset($_SESSION[$tokenSessionKey])) {
        $client->setAccessToken($_SESSION[$tokenSessionKey]);
    }

    $htmlBody = '';

    // Check to ensure that the access token was successfully acquired.
    if ($client->getAccessToken()) {
        try {
            // Execute an API request that lists the streams owned by the user who
            // authorized the request.
            $streamsResponse = $youtube->liveStreams->listLiveStreams('id,snippet', array(
                'mine' => 'true',
            ));

            $htmlBody .= "
Live Streams

";
            foreach ($streamsResponse['items'] as $streamItem) {
                $htmlBody .= sprintf('
%s (%s)
', $streamItem['snippet']['title'],
                    $streamItem['id']);
            }
            $htmlBody .= '
';

        } catch (Google_Service_Exception $e) {
            $htmlBody = sprintf('
A service error occurred: %s
',
                htmlspecialchars($e->getMessage()));
        } catch (Google_Exception $e) {
            $htmlBody = sprintf('
An client error occurred: %s
',
                htmlspecialchars($e->getMessage()));
        }

        $_SESSION[$tokenSessionKey] = $client->getAccessToken();
    }

    var_dump( $client->getAccessToken() );

So what I am looking for is OAuth 2.0 for server-side standalone authorization and the correct approach may be the Service Account Connection  => https://laracasts.com/discuss/channels/tips/google-api-service-account-connection-laravel-5

The YouTube API does not support service accounts. The best way I know how do tell which APIs use service accounts is to click on one of the enabled APIs in https://console.developers.google.com. Then click credentials and see if your service account credentials load in that per-API view.
You are right that it is easy to breeze through necessary auth/auth knowledge, especially when you are trying to get an example working. It's kinda long but https://developers.google.com/identity/protocols/OAuth2WebServer should give you everything you need to know to get authorized to start making API calls.
Please feel free to comment below if you have anymore questions.

I am trying to use this library to list my private YouTube videos through my website. The list should be available as soon as user open the page without user validation. Can or cannot this be done with this library?

You will need user validation once, the very first time. After that it won't be needed again.

The login error was there because I didn’t click through Authentication Url.  @mattwhisenhunt  thank you for you assistance your library does its work I have just tried to use it in a wrong context.


Invalid statusCallback URL

A malformed statusCallback endpoint is included in the payload generated by the processQueue function from https://extensions.dev/extensions/twilio/send-message
This results in errors in the twilio dashboard, and no webhook events being ingested.
processQueue passes 'statusCallback' to the getFunctionsUrl utils method which creates a URL like the following:
https://us-central1-MYPROJECT.cloudfunctions.net/statusCallback
When the extension is installed through the firebase marketplace, it appends an extension instance ID to the function name. This defaults to 'ext-send-message', but is initially configurable (to allow for multiple extension installations).  This is the endpoint where the statusCallback actually deployed.
https://us-central1-MYPROJECT.cloudfunctions.net/ext-send-message-statusCallback

Same problem here. It would be nice to see it fixed.

yeah is this ryt..check statusCallback.js in your google cloud console function edit then look up the line no 17
const url = (0, utils_1.getFunctionsUrl)("statusCallback");
im not sure you can change" statusCallback" to "ext-send-message-statusCallback"

Any updates on this? It's causing https://www.twilio.com/docs/api/errors/11200 errors for us.

Same here, getting https://www.twilio.com/docs/api/errors/11200 errors and need a fix.

Anyone know of a work around?  The activity on this repo seems to have slowed way down... :(

Fixed #101


zynaddsubfx: 3.0.5 → 3.0.6

Description of changes
Update to the latest version: https://github.com/zynaddsubfx/zynaddsubfx/releases/tag/3.0.6
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

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

3 packages built:

zyn-fusion
zynaddsubfx-fltk
zynaddsubfx-ntk

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

3 packages built:

zynaddsubfx
zynaddsubfx-fltk
zynaddsubfx-ntk


Feature/nav focus

This contains the basic navigation (left,right,down and up)
There will be another PR with 'back, enter and menu"
@jimdebeer and @youzi

Closing... Check this https://github.com/vigour-io/element/pull/97


Employ user hooks to map Stanford's pretrained word embeddings to Spacy's token vectors

Since StanfordNLP's pretrained word embeddings are already loaded into memory (I think), this seems to be the easiest way to acccess them. Another option, I guess, would be to load them as external vectors into Spacy's vocabulary, but not sure if there would be any advantage, given that it would also duplicate memory.
Note, PR also updates the Spacy dependency from 2.1.0 alpha (nightly) to 2.1.0 stable version.

Oh wow, thanks, this is great! 👍 Once this is merged, I'll push another release – can't believe I missed the spaCy dependency update.

I think this should be sufficiently robust now?

Looks great, thanks!


shared IPC namespace does not share /dev/shm

If I create container A, then create container B with --ipc=container:A, the two containers do not share a /dev/shm mount.  I think this will prevent POSIX shared memory from working.
@mrunalp
@vishh

@thockin @vishh The way to make it work in docker is to detect that container A has a user mounted /dev/shm and if yes then share it with B as well when --ipc:container:A is passed as an option.

It seems that docker already mounts /dev/shm by default for every
container, so no user-mounted special handling required?
On Apr 3, 2015 10:49 PM, "Mrunal Patel"<EMAIL_ADDRESS>wrote:

@thockin https://github.com/thockin @vishh https://github.com/vishh
The way to make it work in docker is to detect that container A has a user
mounted /dev/shm and if yes then share it with B as well when
--ipc:container:A is passed as an option.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/issues/12046#issuecomment-89509295.

@thockin The default mounted /dev/shm is within a container's mount namespace, so it isn't possible to share it with another container which has it's own mount namespace (without them sharing mount namespaces). Hence, the workaround of mounting an external /dev/shm which could then be bind mounted into multiple containers.

Oh, sure, yeah.  But that is an implementation detail :)
On Apr 4, 2015 12:51 PM, "Mrunal Patel"<EMAIL_ADDRESS>wrote:

@thockin https://github.com/thockin The default mounted /dev/shm is
within a container's mount namespace, so it isn't possible to share it with
another container which has it's own mount namespace (without them sharing
mount namespaces). Hence, the workaround of mounting an external /dev/shm
which could then be bind mounted into multiple containers.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/issues/12046#issuecomment-89620357.

POSIX IPC SHM uses /proc/sysvipc/shm, not /dev/shm.
/dev/shm is a vanilla tmpfs mount. Nothing more special about it than that. It's just standard practice for it to be there.

Man pages say /dev/shm, but my experience was that glibc starts
with/dev/shm and if not a tmpfs, scans /proceed/mounts for any tmpfs.
I have never heard of this other path - where did you find that?
On Apr 5, 2015 3:00 AM, "Patrick Hemmer"<EMAIL_ADDRESS>wrote:

POSIX IPC SHM uses /proc/sysvipc/shm, not /dev/shm.
/dev/shm is a vanilla tmpfs mount. Nothing more special about it than
that. It's just standard practice for it to be there.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/issues/12046#issuecomment-89747567.

https://www.technovelty.org/linux/shared-memory-on-linux.html
Ahh, it's the difference between sysV shm and POSIX shm.
On Apr 5, 2015 7:50 AM, "Tim Hockin"<EMAIL_ADDRESS>wrote:

Man pages say /dev/shm, but my experience was that glibc starts
with/dev/shm and if not a tmpfs, scans /proceed/mounts for any tmpfs.
I have never heard of this other path - where did you find that?
On Apr 5, 2015 3:00 AM, "Patrick Hemmer"<EMAIL_ADDRESS>wrote:

POSIX IPC SHM uses /proc/sysvipc/shm, not /dev/shm.
/dev/shm is a vanilla tmpfs mount. Nothing more special about it than
that. It's just standard practice for it to be there.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/issues/12046#issuecomment-89747567.

@thockin Agree re: implementation detail :)
Not arguing about what is right but I was just going by TLPI :)
So, is it fair to say that Linux implements POSIX shared memory using /dev/shm?
From TLPI:

POSIX shared memory allows to us to share a mapped region between unrelated
processes without needing to create a corresponding mapped file. POSIX shared
memory is supported on Linux since kernel 2.4.
SUSv3 doesn’t specify any of the details of how POSIX shared memory is to be
implemented. In particular, there is no requirement for the use of a (real or virtual)
file system to identify shared memory objects, although many UNIX implementa-
tions do employ a file system for this purpose. Some UNIX implementations create
the names for shared memory objects as files in a special location in the standard
file system. Linux uses a dedicated tmpfs file system (Section 14.10) mounted under
the directory /dev/shm . This file system has kernel persistence—the shared memory
objects that it contains will persist even if no process currently has them open, but
they will be lost if the system is shut down.

As I understand it, yes.
On Apr 5, 2015 11:36 AM, "Mrunal Patel"<EMAIL_ADDRESS>wrote:

@thockin https://github.com/thockin Agree re: implementation detail :)
Not arguing about what is right but I was just going by TLPI :)
So, is it fair to say that Linux implements POSIX shared memory using
/dev/shm?
From TLPI:
POSIX shared memory allows to us to share a mapped region between unrelated
processes without needing to create a corresponding mapped file. POSIX
shared
memory is supported on Linux since kernel 2.4.
SUSv3 doesn’t specify any of the details of how POSIX shared memory is to
be
implemented. In particular, there is no requirement for the use of a (real
or virtual)
file system to identify shared memory objects, although many UNIX
implementa-
tions do employ a file system for this purpose. Some UNIX implementations
create
the names for shared memory objects as files in a special location in the
standard
file system. Linux uses a dedicated tmpfs file system (Section 14.10)
mounted under
the directory /dev/shm . This file system has kernel persistence—the
shared memory
objects that it contains will persist even if no process currently has
them open, but
they will be lost if the system is shut down.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/issues/12046#issuecomment-89830143.

#12159 created to implement this.

#12159 merged, I'm closing this

Except unfortunately the change was reverted due to some unresolved issues causing CI to break, so I'll re-open. :(
See #15862


[opt] dead thin to thick in mand combine

This patch supports basic elimination of dead thick to thin function refs in mandatory combine. With #30463 and store elimination more complex function bodies [1] could also be fully optimized away. This patch is taken from #28536.
[1] this is an example of a function I pulled almost directly from silgen. I have verified that after applying this patch, #30463, and a store elimination patch all loads, stores, and closures are able to be removed. That being said, it may not be worth the extra Onone compile time.

@swift-ci please smoke test

@gottesmm friendly ping.

Please update the base branch to main by Oct 5th otherwise the pull request will be closed automatically.

How to change the base branch: (Link)
More detail about the branch update: (Link)


Add test script for $natural sort on non-capped collections

Description

This was found in Meteor's oplog_tests.js which we run on dance.
Closes #3943.
Readiness checklist

[ ] I added/updated unit tests (and they pass).
[ ] I added/updated integration/compatibility tests (and they pass).
[ ] I added/updated comments and checked rendering.
[ ] I made spot refactorings.
[ ] I updated user documentation.
[ ] I ran task all, and it passed.
[ ] I ensured that PR title is good enough for the changelog.
[ ] (for maintainers only) I set Reviewers (@FerretDB/core), Milestone (Next), Labels, Project and project's Sprint fields.
[ ] I marked all done items in this checklist.

#4342


InfluxDB failed invalid character '<' looking for beginning of value

2022/12/17 17:17:58 [ERROR] metric fetch for InfluxDB failed: re-authenticating to http://<IP_ADDRESS>: unifi controller: unable to get server version: invalid character '<' looking for beginning of value
Fresh Install and getting this error
Network 7.2.95

This looks like something is incorrect and it’s spitting back html at you

Your controller is not listening on an http port. Fix that.

Was able to sort this out


[C-API] client

This PR implements all blocking APIs and a async unary call. It has tests for the basic API wrapping layer and for generated code. It supersedes https://github.com/grpc/grpc/pull/7386.
To reviewers:

include/grpc_c contains the public headers that the final user could see.
include/grpc_c/codgen contains the private headers that must be visible to generated code, but shall not be referenced directly in user code.
src/c contains the implementations of those methods defined in include.
src/compiler/c_generator.cpp contains the bulk of grpc_c_plugin code generator.
test/c/end2end contains end-to-end tests for the APIs.
examples/c contains the helloworld and routeguide example ported to C demonstrating the usage of the API.

The tests are written in C++, since it depends on a server implementation which the C runtime does not provide yet. As a result they are subsumed under C++ tests and can be run by specifying -l c++ in the test script.
Since this is a huge PR, I hope to split it into different functional components and have multiple reviewers each going over a section:

Unary blocking call: src/c/unary_blocking_call.c
Client streaming block call: src/c/client_streaming_blocking_call.c
Server streaming block call: src/c/server_streaming_blocking_call.c
Bidi streaming block call: src/c/bidi_streaming_blocking_call.c
Unary async call: src/c/unary_async_call.c

Some useful files:

src/c/completion_queue.c handles unwrapping of tags. A call_op_set is always used as tag during async operations. The user tag is stored in the set and is what completion_queue_next returns.
src/c/call_ops.c handles filling a grpc_op array using operations specified in call_op_set. The library can declaratively indicate the actions to be performed in a call_start_batch, much like C++.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok to test.

@nicolasnoble Do you have Google CLA?

That thing gets confused if you pull someone else's PR in yours. Yes, I have Google's CLA as I am a Google employee :-)

Yeah but how do I unconfuse it? ;)

Just label is "cla: yes" and remove "cla: no" like here:
https://github.com/google/protobuf/pull/361#issuecomment-109549084

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

no action here for >1 year. Closing as code is probably way out of date.
CC @vjpai  @srini100


Support for Swagger 2.0 requests

Swagger 1.2 is not in the code path at all.
tween20.py created to isolate Swagger 2.0 support
Manually tested using example_happyhour and works wonderfully
using requirements.txt for deps until packaged on pypi

Coverage decreased (-4.56%) to 95.16% when pulling ce4caf56e7ec993ad0dce7d5d57c5d8ddc5e9ae6 on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

Coverage decreased (-4.59%) to 95.13% when pulling 3e998746fb605c9d3da7a2b484162f8de135c7ac on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

@dnephin Think this is ready to go on the request side.  I have another branch which is for the response side of things. Let me know what you think.

I think this looks good. With the proposed changes it could be just three functions (get_op_for_request, swaggerize_request, and swaggerize_response) with some very minor changes to the existing code to parametrize it.

Coverage decreased (-8.79%) to 90.93% when pulling ac18ef5ffd2c760c7170fce1d7aa4c0ec3657f3b on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

Coverage decreased (-8.79%) to 90.93% when pulling ac18ef5ffd2c760c7170fce1d7aa4c0ec3657f3b on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

Coverage decreased (-8.79%) to 90.93% when pulling 96879c19dbfd1c9023704bdad078737eafc97dac on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

Coverage decreased (-8.79%) to 90.93% when pulling 96879c19dbfd1c9023704bdad078737eafc97dac on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

Coverage decreased (-8.81%) to 90.91% when pulling dfe22aa158ae60319bb8ca081e9ecc9b5d58e6c7 on analogue:swagger_2.0_requests into fe3b87706673c58929e2a2b0a9d3236f4e4517ca on striglia:swagger2.0.

lgtm