make the reqwest client customoziable in ReqwestLoader

the goal is to allow someone to add middlewares,
for example https://crates.io/crates/http-cache-reqwest
By the way, it is recommended by the JSON-LD spec that document loaders implement some form of caching.
Just saying... ;->

I like the idea, but just to be sure, are we really supposed to create a new reqwest::Client for every query? Or recycle the same one?

That's a good point. The current proposal aimed to be as close as possible to the original design, but having a persistent Client object as a field of the loader looks indeed like a better idea. I will update this PR accordingly.

Sorry for the delay, I was waiting for Rust 1.77 to come out with true support for recursive async functions. I can finally, finally, remove all ugly Box<dyn Future> and unnecessary trait bounds. Now that its done I cleaned up a lot of things. I also took this opportunity to put all the sub-crates inside a crate folder. I'm sorry this will make rebasing a bit more difficult. I really want to improve the ReqwestLoader though.

I can finally, finally, remove all ugly Box and unnecessary trait bounds.

That's nice indeed :)

I'm sorry this will make rebasing a bit more difficult.

Do I read that you expect me to rebase this PR? :sweat_smile:
If so, no problem, but I can't promise to do this in the near future. Also, given how much changes there has been, I think it might be easier to make a brand new PR on top of the new code...

Do I read that you expect me to rebase this PR? 😅
I understand :smile:

Yes at this point restarting from scratch might be easier.

By the way, if the goal is to allow a middleware, then the client type should be reqwest_middleware::ClientWithMiddleware, right?

I'm making the same changes in #74


Restrict file access to the owner

Description

Make each file link to an applicant, the applicant can only access a file linked to them
Clean up the presigned url field in StoredFile.java
Make program admin only access files in the application applying to their programs

Checklist

[x] Created tests which fail without the change (if possible)
[ ] Extended the README / documentation, if necessary

Issue(s)
#1355

Closing in favor of #1360


Remove Praktikum from default view

According to the Prüfungsordnung, the SPP has no affect on the final grade and therefore is irrelevant here.

Thanks for your report, @Lukas-J


py3exiv2 not reading all the tags in a TIFF stack

When I use py3exiv2 to try to open and read tags from a tiff stack created by a FLIR camera, it only reads up to tags for the 3rd image in the stack. For the image I am testing I get 108 exif keys.

When I open the same image with exifread in Python 2 I get tags for around 700 images which is what I expect to see in pyexiv2. For the image I am testing I get 16086 keys, including ones that look like they are for each image in the stack ('IFD 765 Resolution Unit' for example).

I'd rather use pyexiv2 because I plan to break the images into separate ones for processing and want to preserve the tags in the individual images and when I process the stack. exifread is not able to write keys.

I'm sorry but there are no plans to add write support to ExifRead.


ADBDEV-5339: Fix invalid attribute number when executing shared CTE

Fix invalid attribute number when executing shared CTE
Previously, the planner encountered a problem with the handling of the target
list for the ShareInputScan. Typically, the target list of ShareInputScan is
directly copied from it's outer plan during the optimization phase, since it
wasn't evalutated and was needed only for EXPLAIN. However, when dealing with a
DML statement that includes a RETURNING clause, the behavior was incorrect, due
to the ModifyTable's targetlist only being initialized during the execution
phase. This led to an error due to a difference between the expected and actual
number of columns when computing the result tuple's descriptor from the
targetlist, as it was incorrectly copied as NIL.
This patch addresses this issue by setting up a dummy targetlist for ModifyTable
while in optimization phase to ensure that the ShareInputScan's targetlist is
correctly copied later. Since the ModifyTable's targetlist is now initialized,
an existing workaround used for Motions is removed.

One more question. The special case for if (IsA(lefttree, ModifyTable)) was removed in make_motion(), but is there any test scenario which covers this special case? Or may we be sure that this case is not need or never happens?

Or may we be sure that this case is not need or never happens?

We may abuse inlined function to achieve a motion above ModifyTable:
CREATE TABLE mt_motion(i int, j ing) DISTRIBUTED BY (j);

CREATE FUNCTION inlined_insert() RETURNS TABLE(a integer, b integer)
    AS $$
        WITH cte AS (INSERT INTO mt_motion SELECT 1 RETURNING *) SELECT * FROM cte;
    $$ STABLE LANGUAGE SQL;

EXPLAIN (costs off) SELECT * FROM inlined_insert() JOIN mt_motion ON i = b;

Plan:
                          QUERY PLAN
---------------------------------------------------------------
 Gather Motion 3:1  (slice1; segments: 3)
   ->  Hash Join
         Hash Cond: (mt_motion.i = mt_motion_1.j)
         ->  Seq Scan on mt_motion
         ->  Hash
               ->  Broadcast Motion 1:3  (slice2; segments: 1)
                     ->  Insert on mt_motion mt_motion_1
                           ->  Result
 Optimizer: Postgres-based planner
(9 rows)

It does not lead to any problems, since now ModifyTable with RETURNING clause has a targetlist at all times. I will investigate it a little bit further.

It looks like there's always going to be a SubqueryScan between the Motion node and ModifyTable, because RETURNING clause can only be used in CTEs. If the CTE is shared with other parts of the query, there will a ShareInputScan under the SubqueryScan as well, all between the Motion and ModifyTable. So the test case seems impossible to implement.
Sometimes (as in the plan from my previous message) SubqueryScan might get removed during the final stages of planning if it's targetlist is NIL or fully matches outer plan, but the Motion's targetlist will still be a copy from that SubqueryScan while it was still present.


stdio_usb, hitting a 256 byte limit

Hello,
I have some code which uses multiple print statements within a timer callback (using the add_alarm_in_ms function).
Each printf statement is not particularly long, but I have multiple printf because I'm printing a user menu. In total, across all the printf statements, the number of characters exceeds 256 bytes.
What occurs, is that only 256 bytes are printed. I have tried interspersing sleep_ms commands, but it does not like that (guessing that I cannot use the sleep_ms within a callback).
Anyway, I have a sort of workaround, which is to increase the 256 byte limit in the file
rp2_common/pico_stdio_usb/include/tusb_config.h
so that a line in that file becomes this:
#define CFG_TUD_CDC_TX_BUFSIZE  (1024)
Is there a bug somewhere? Or am I doing something wrong? What's the proper way I should resolve this? I'd like to continue using the printf commands in the callback, because it suits the structure of the particular code I'm using. Agree it's not usually good practice to do a lot in an interrupt-like callback, but I don't re-enable the timer except at the end of the callback using the return value, i.e.:
return(MY_ALARM_USEC_PERIOD);
Thanks for your help.

ping @hathach

ping @hathach

not related to TinyUSB particularly

As you have guess your problem is caused by doing printf to USB during an IRQ callback. Your IRQ is higher priority than that the handles USB interrupts (and to a lesser extend that does TinyUSB backround work for stdio_usb).. you would generally deadlock except that we have deliberately tried to avoid toomuch foot-gunning in that arena, by making s stuff discard output instead.
The simplest way to workaround your problem is to create a new alarm pool via alarm_pool_create() using a different hardware alarm and then lower the priority of the IRQ for that alarm via irq_set_priority(TIMER_IRQ_<N>, 0xC0) or something and create your alarm callback using this new lower priority alarm pool

closing as it isn't really an issue per se.

Hi @kilograham and @lurch , thanks for the response!
That makes sense, I've looked at the API documentation to understand the functions you mention, and I think I understand how to go about this now. I would very much like the priority of the alarm that I'm using to be lower than USB interrupt requests for this particular use-case, so what you say sounds like a good plan.

Just in case anyone else hits this problem, the procedure described above worked : )
This was the functioning code:
**alarm_pool = alarm_pool_create(2, 16); // create an alarm pool, use hardware alarm #2
irq_set_priority(TIMER_IRQ_2, 0xc0); // larger number is lower priority
alarm_pool_add_alarm_in_ms(alarm_pool, ALARM_MSEC_PERIOD, your_callback_function, NULL, false); // ALARM_MSEC_PERIOD can be say 20 for 20 msec**

And then in the callback which has function prototype:
*int64_t your_callback_function(alarm_id_t id, void user_data)
at the end simply return (ALARM_MSEC_PERIOD) so that the alarm is re-armed.


HVN fails to build on fresh Ubuntu GNOME 16.10

This is on a freshly installed and updated Ubuntu GNOME 16.10.
I've installed HVN successfully on my primary laptop, and I don't understand the problem here. I have installed none of GHC, Haskell Platform, or Stack prior to HVN... I figured I would allow HVN to handle everything in this instance. Any suggestions are greatly appreciated.
Here is the terminal output:
user@host:~$ bash /tmp/haskell-vim-now.sh
ENV: [HVN_INSTALL_BASIC=]
--> No previous installations detected.
--- Installing Haskell-Vim-Now from https://github.com/begriffs/haskell-vim-now.git ...
Cloning into '/home/user/.config/haskell-vim-now'...
remote: Counting objects: 998, done.
remote: Total 998 (delta 0), reused 0 (delta 0), pack-reused 998
Receiving objects: 100% (998/998), 327.21 KiB | 0 bytes/s, done.
Resolving deltas: 100% (610/610), done.
Checking connectivity... done.
--- Installing system packages [libcurl4-openssl-dev] using [APT]...
--- Installing with apt-get...
Reading package lists... Done
Building dependency tree
Reading state information... Done
Skipping libcurl4-openssl-dev, it is already installed and upgrade is not set.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
--- Checking ctags' exuberance...
--- Setting git to use fully-pathed vim for messages...
--- Installing vim-plug
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 71606  100 71606    0     0   146k      0 --:--:-- --:--:-- --:--:--  146k
--- Backing up current vim config using timestamp 20170219_102833...
--- Creating vim config symlinks
	~/.vimrc -> /home/user/.config/haskell-vim-now/.vimrc
	~/.vim   -> /home/user/.config/haskell-vim-now/.vim
--- Installing plugins using vim-plug...

make -f make_unix.mak
make[1]: Entering directory '/home/user/.config/haskell-vim-now/.vim/bundle/vimproc.vim'
cc -W -O2 -Wall -Wno-unused -Wno-unused-parameter -std=gnu99 -pedantic -shared -fPIC  -o lib/vimproc_linux64.so src/proc.c -lutil
make[1]: Leaving directory '/home/user/.config/haskell-vim-now/.vim/bundle/vimproc.vim'

--- Setting up GHC if needed...
Downloaded lts-8.1 build plan.
Updating package index Hackage (mirrored at https://github.com/commercialhaskell                                                                                Fetched package index.
Populated index cache.
Downloaded ghc-nopie-8.0.2.
Unpacking GHC into /home/user/.stack/programs/x86_64-linux/ghc-nopie-8.0.2.temp/                                                                                Installed GHC.
	Stack bin path: /home/user/.local/bin
	Stack global path: /home/user/.stack
	Stack global config location: /home/user/.stack/global-project/stack.yaml
	Stack resolver: lts-8.1
	/home/user/.config/haskell-vim-now/.stack-bin -> /home/user/.local/bin
--- Installing helper binaries...
Plan construction failed.
*** Binary installation failed with error 1.
*** Aborting...

Edit: I should clarify that the output shown above is from my second attempt to run the installer script. That is why the package dependencies are already installed. However, the first attempt resulted in the same error. Being a totally fresh OS install, my terminal history was set to the default, which was too small to scroll back and copy the entire output from the first attempt.

I've just noticed that the /home/user/.local/bin directory is empty. This seems like a problem, since haskell-vim-now/.stack-bin points to there, but there are no stack binaries in /home/user/.local/bin.

I originally didn't feel I had time to try and debug this, but then I figured I should at least try to get a little more info. The useful error messages from stack are suppressed when running the HVN setup script, so I tried manually to install the helper binaries using the exact command that the setup script was using.
The result included the following messages:
user@host:~$ stack --resolver lts-8.1 install ghc-mod hlint hasktags hscope pointfree pointful hoogle apply-refact machines-directory-<IP_ADDRESS> machines-io-<IP_ADDRESS> codex-<IP_ADDRESS>

Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for codex-<IP_ADDRESS>:
    directory-<IP_ADDRESS> must match >=<IP_ADDRESS> && <1.3 (latest applicable is <IP_ADDRESS>)
    http-client-0.5.5 must match >=0.4 && <0.5 (latest applicable is <IP_ADDRESS>)
    wreq must match >=<IP_ADDRESS> && <0.5, but the stack configuration has no specified version
         (latest applicable is <IP_ADDRESS>)

In the dependencies for hasktags-<IP_ADDRESS>:
    directory-<IP_ADDRESS> must match >=1.1 && <1.3 (latest applicable is <IP_ADDRESS>)

In the dependencies for hscope-0.4.3:
    haskell-src-exts-1.18.2 must match ==1.17.* (latest applicable is 1.17.1)

In the dependencies for machines-directory-<IP_ADDRESS>:
    directory-<IP_ADDRESS> must match >=1.2 && <1.3 (latest applicable is <IP_ADDRESS>)

In the dependencies for pointfree-<IP_ADDRESS>:
    haskell-src-exts-1.18.2 must match ==1.17.* (latest applicable is 1.17.1)

Recommended action: try adding the following to your extra-deps in /home/user/.stack/global-project/stack.yaml:
- wreq-<IP_ADDRESS>

You may also want to try the 'stack solver' command
Plan construction failed.

Not sure if I'm interpreting this correctly, but it seems that stack is looking for more recent versions of several packages than are available via the lts-8.1 resolver. I'm not well-versed in stack, just started using it fairly recently.

Haskell-vim-now consults global stack config for your system to determine which "resolver" to use. It looks like new stack installations are choosing LTS 8.1. Each Stack resolver pins the versions of all Haskell packages to versions that are known to all work together. However not all packages/versions are registered there, for instance codex does not appear in the list for LTS 8.1. Hence we add version constraints (codex-<IP_ADDRESS>) in the install command so that Stack can attempt to pick that version.
However the constraints in codex-<IP_ADDRESS> clash with the versions pinned by LTS 8.1.
I'd advise finding your global stack config by running stack --verbosity 0 path --config-location. Next edit the file to choose an older resolver like resolver: 7.16. This doesn't mean your projects can't use a newer GHC version, just that the helper tools will be built using an earlier version.
The only troublesome spot will be that I bet ghc-mod will not work properly because it is very picky that the version of cabal-install with which it was built matches that of the project it is inspecting.
Give the LTS downgrade a try and let me know. If it goes well I could temporarily hard-code that version in the installer until projects like codex are updated to be compatible with LTS 8.

That seemed to do the trick, thanks again @begriffs . So, for my own understanding, this happened because HVN referenced the codex package, but the most recent version of that package has dependencies that don't match up with the latest resolver version?

That's right. :)

I can't get this to work. I have tried lts-7.20, lts-7.19, ghc-7.10.3 and they all yield:
--- Installing helper binaries...
Plan construction failed.
*** Binary installation failed with error 1.
*** Aborting...

If I set
resolver: 7.16
I get:
Could not parse '/home/torstein/.stack/global-project/stack.yaml':
Aeson exception:
Error in $.resolver: failed to parse field 'resolver': Invalid Resolver, must be Object or String
See http://docs.haskellstack.org/en/stable/yaml_configuration/
*** Stack setup failed with error 1.
*** Aborting...

I hit this too and am working on a PR for it.


windows_service does not support :reload

Description
Using windows_service as documented here, with :reload throws error:

#Chef::Provider::Service::Windows:0x36eee00 does not support :reload

Using any other resource "enable", "configure_startup" ect.. works without problem.
Looking at the source, it seems that the 'reload' method is not defined.
https://github.com/chef/chef/blob/master/lib/chef/provider/service/windows.rb
Chef Version
12.8.1
Platform Version
Windows 2012 R2
Replication Case
windows_service 'SomeService' do
  run_as_user 'foobar'
  run_as_password 'correct-horse-battery-staple'
  action :reload
end

Client Output
* windows_service[AspireService] action reload
           * #<Chef::Provider::Service::Windows:0x36eee00> does not support :reload
           ================================================================================
           Error executing action `reload` on resource 'windows_service[AspireService]'
           ================================================================================

           Chef::Exceptions::UnsupportedAction
           -----------------------------------
           #<Chef::Provider::Service::Windows:0x36eee00> does not support :reload

           Resource Declaration:
           ---------------------
           # In C:/Users/ADMINI~1/AppData/Local/Temp/kitchen/cache/cookbooks/nd-aspire/recipes/default.rb

           122: windows_service 'SomeService' do
           123:
           124:   run_as_user 'foobar'
           125:   run_as_password 'correct-horse-battery-staple'
           126:   action :reload
           127: end

Does Windows even have this? I don't think windows has anything generic like SIGHUP for behavior like this.

Doubt it. The closest thing would probably be sc.exe config
http://ss64.com/nt/sc.html

Seems like this should be a doc update then :-)

Agreed, this is a documentation update @jamescott

This looks like the error message is 100% accurate -- "does not support reload"

There is a reload_command attribute documented. I think the resource should support reload, but only if the user has defined a reload_command attribute.

PR opened against the docs (https://github.com/chef/chef-web-docs/pull/1503) - closing this now.


Spring Webflux 2.4.2 + Ilford - Intermittent traces not found

Hello Spring Cloud Sleuth Team,
I would like to report an issue where some of my traces get lost.
Currently, I am using a SpringBoot Webflux 2.4.2 app, with Ilford 2020.0.0.
I am also using the Zipkin and Sleuth dependecy as follow.
 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-sleuth</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
        </dependency>

Moreover, I have those in my properties.
  "spring.sleuth.sampler.probability": "1.0",
  "spring.zipkin.base-url": "http://my-zipkin.com:9411",
  "spring.zipkin.enabled": true,
  "spring.zipkin.sender.type": "web",

As a result, I do see some traces in my Zipkin server, the trace are there, searchable, very happy.
However, I am not able to find all the traces, on many occasions, I input a trace ID, and it is not there.
Actually, there are more traces I cannot find, than traces I can find.
Yet, it seems there is no pattern or correlations, it is not like I can only see the traces that happen every N minutes, etc.
And especially with "spring.sleuth.sampler.probability": "1.0", I was expected I would send 100% of the traces to Zipkin.
May I ask if this is an issue please?
Thank you

Can you create a sample that replicates the problem?

Or course, will do.
But there is nothing special in my sample, just one webflux web server, in the handler, it creates a web client that will trigger another call.
I even added
spring.sleuth.sampler.rate=100
spring.sleuth.sampler.probability=1.0

Still reproducible.
Are they some kind of hidden rule, that will make sleuth-zipkin not to send the trace?
Or is it possible to see in the log if a trace was failed to be sent?
Thank you

There are no hidden rules as far as I know, that's why we need a sample project to repro the issue.
The zipkin Reporter reports the spans, you can check the zipkin2.reporter package and you can a lower log level to get more details. There is also LogSpanHandler that logs out your spans and the Reporter also records metrics.

You can change the logging format and search for sampled entry. It should come from MDCScopeDecorator class from Brave.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Hello @marcingrzejszczak,
I tried putting MDCScopeDecorator log to DEBUG, not seeing anything helpful.
Maybe I am looking at the wrong place.
Would it be possible to have a debug line, from the web app, that simply says
"trace successfully sent to Zipkin server"
"trace not sent to Zipkin server"
Or something similar? That would help in the troubleshooting of such issues.
Thank you

I guess what Marcin was referring to is changing the logging.pattern.level property. See the docs or this SO answer.

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.


Optimized HelixBrokerStarterTest

Removed unnecessary sleeps

@Jackie-Jiang 33.434sec -> 19.531 sec on Travis

Codecov Report

Merging #1648 into master will decrease coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1648      +/-   ##
==========================================
- Coverage   67.72%   67.67%   -0.05%
==========================================
  Files         825      825
  Lines       40128    40128
  Branches     5279     5279
==========================================
- Hits        27175    27157      -18
- Misses      11144    11168      +24
+ Partials     1809     1803       -6

Impacted Files
Coverage Δ

...ntroller/helix/core/PinotHelixResourceManager.java
60.59% <ø> (-0.22%)
:arrow_down:

...not/common/segment/fetcher/HttpSegmentFetcher.java
28.57% <0%> (-19.05%)
:arrow_down:

...m/linkedin/pinot/common/utils/FileUploadUtils.java
45.58% <0%> (-7.36%)
:arrow_down:

...nkedin/pinot/common/metrics/ValidationMetrics.java
77.04% <0%> (-4.92%)
:arrow_down:

...ot/core/query/pruner/ColumnValueSegmentPruner.java
84.48% <0%> (-3.45%)
:arrow_down:

...m/linkedin/pinot/client/DynamicBrokerSelector.java
69.69% <0%> (-3.04%)
:arrow_down:

...ain/java/com/linkedin/pinot/client/Connection.java
51.35% <0%> (-2.71%)
:arrow_down:

...regation/function/customobject/QuantileDigest.java
46.99% <0%> (-2.58%)
:arrow_down:

...pinot/controller/validation/ValidationManager.java
81.01% <0%> (-2.32%)
:arrow_down:

.../impl/dictionary/FloatOnHeapMutableDictionary.java
88.88% <0%> (-2.23%)
:arrow_down:

... and 19 more

Continue to review full report at Codecov.

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


code-server command not working after installing zsh

When my terminal was the default shell then code-server command was working. But suddenly I have been installed zsh in my pc so I change from default to zsh. Presently code-server command not working. When I went to install it again, The system called that code-server is already installed.

Now, I can not open code-server. Have any solution?
Thank you

This probably means you need to add ~/.local/bin to your PATH.

You can also try running it directly: ~/.local/bin/code-server

Thank you so much.


using sigmoid_prime in error_term_formula function

in the function error_term_formula function sigmoid_prime was rewritten

This is fixed in another PR #284.


Unable to proceed from the "download resources" step

[Enter feedback here]
Used the feed URL as been provided in the guide:
https://rdweb.wvd.microsoft.com/api/arm/feeddiscovery
Now the workspace had been created, however cannot proceed on due to an error occurring in the download process.
Error message that appears is : " unable to download managed resources associated with the workspace"
Tried rebooting the app.
accessing from ipad pro (the most recent version) using RD client.

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

ID: b3b22a7c-4bf1-84fa-17e8-9c7690f6e242
Version Independent ID: a8d5060f-186b-c55b-0ff6-bb53d9278410
Content: Connect to Windows Virtual Desktop from iOS - Azure
Content Source: articles/virtual-desktop/connect-ios.md
Service: virtual-desktop
GitHub Login: @Heidilohr
Microsoft Alias: helohr

Thanks for the feedback! We are currently investigating and will update you shortly.

@luhyun95 Sorry for the delay on this. Just wanted to check if you are still seeing this issue and need help. Let me know.

We will now close this issue. If you are still seeing issues, please tag me in a comment. I will reopen it and we will gladly continue the discussion.


Broken links

Broken links in section 5.5 and 6:
Any links using https://rsmp-nordic.org should be changed to https://rsmp-nordic.github.io/ and the latest core version

Fixed with fe0c5465bb45a119115d6274b4160bd3f3f96701


fix(8076): last name chip on text messages

Which Problems Are Solved
fix {{.Lastname}} chip on test message settings
How the Problems Are Solved
{{.LastName}} should appear in the text field
Additional Changes
No additional changes
Additional Context

Closes #8076

Hi @danielmoisa
Thanks for your contribution we really appreciate it.
If you would like to get a small gift from us, please reach out to<EMAIL_ADDRESS>


add export WorkflowStepMiddlewareArgs

Summary
those exportables are not added
Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @siturra! Can you provide us with more information about the use case for exposing these internal bits? It will help us guide the review, as well as inform future work.

Hi @siturra! Courtesy nudge: unless we hear back regarding more information about the use case for exposing these internal bits, we'll be closing this PR.

Let us close this PR now. Thanks again for your time here!


[Mightbe a Bug report] X-fill doesn't support secondary dynamic attributes

Hello, after studying  and using ofa.js, it's a great framework, but still have something confusing, so I listed below:

~X-fill doesn't support secondary dynamic attributes~ ( solved, use attr:name )
Old projects migrate to ofa have global style repeated importing issue
clipboard can't work on ofa.js

First one is solved :) please jump to 2nd and 3rd.
So I start with the title issue first:
When using x-fill, the sub element can't have dynamic attr like vue does,
for example:
<template component>

  <button on:click="count++">Count++</button>
  <x-fill :value="arr">

$index : {{$index}}; $data : {{$data}};  count:{{$host.count}}

  </x-fill>

</template>

You can see, no matter how I use it, attributes are always null,
in vue, we can just startwith a :+name, just as ofa.js doc mentioned, but obviously, not working here.
It's also might be my misuse, if that so, please point out, thanks.

Then, about old project using ofa.js,
I see it's shadow-nodes, so the toppest node stylesheet can't be applied to the o-page or o-app inside of that.
But I see the layout section split the nav and body, if stylesheet can't be applied in layout section, what's the point of layout, sorry if it was a stupid question, I know what layout does, but I don't see how stylesheet repeatedly imported again and again, there must be some common sections.

I tried to add stylesheet in layout, but it's not applied to the sub components, I see parent are actually loaded before, but it still has shadow-nodes
last, clipboard won't work on ofa.js no matter how I tried, like in top html or inside components.
Nothing happens
https://www.npmjs.com/package/clipboard
var clipboard = new ClipboardJS('.btn');

clipboard.on('success', function (e) {
  console.info('Action:', e.action);
  console.info('Text:', e.text);
  console.info('Trigger:', e.trigger);

  e.clearSelection();
});

clipboard.on('error', function (e) {
  console.error('Action:', e.action);
  console.error('Trigger:', e.trigger);
});

// or like this
/*
<button class="btn" data-clipboard-target="#foo">

</button>
*/

Could you please help me understand what's wrong with my usage and how to make it corret?
Thank you for your time and contributions!

Thank you for your message.
Regarding the layout you mentioned, is it referring to the layout on the ofa.js official website? I can briefly introduce what the layout on the official website is.
Strictly speaking, it's not a traditional layout but more like nested routing, similar to React nested routes. I find defining nested routes separately cumbersome, so I placed the operation of nested routes on the page module rather than directly binding it to the browser address bar. This is done to prepare for running multiple instances of o-app on a single page in the future.
If you are referring to the situation where styles are not taking effect inside components or pages after globally referencing common layout styles, you can re-reference the styles using the link tag within the template. This won't result in duplicate downloads, as the style file will be downloaded only once.
<template page>
    <link rel="stylesheet" href="./public-layout.css" />
    ...
</template>

Alternatively, you can encapsulate it into a layout component for public use.

To modify the styles of child components, you need to define the part attribute, which involves knowledge of Web Components.

::part()

If you want to modify the styles of multi-level child elements inside a component's slot, you can use inject-host.
For the selector on the clipboard button, it is used globally and cannot access elements inside the shadow DOM. You can point to elements inside the shadow DOM in the configuration.

<template component>
  <input id="foo" value="https://github.com/zenorocha/clipboard.js.git" />
  <button class="btn" data-clipboard-target="#foo">

  </button>

</template>

<l-m src="./test-copy.html"></l-m>

</template>

<l-m src="./copy-area.html"></l-m>

</template>

<l-m src="./test-copy.html"></l-m>

</template>

<l-m src="./copy-area.html"></l-m>
<copy-area> Content to be copied !!!</copy-area>

Hi, thanks for your reply.
I managed to able make a clipboard component as you did.
There is another question about router, do router support alias instead of o-page path, it's more clear and elegant,
as for layout, I think it might better use a new UI framework or ofajs's ecosystem's work, will UI have a new website for introducing that?
Thank you again.

Hi, thanks for your reply.
I managed to able make a clipboard component as you did.
There is another question about router, do router support alias instead of o-page path, it's more clear and elegant,
as for layout, I think it might better use a new UI framework or ofajs's ecosystem's work, will UI have a new website for introducing that?
Thank you again.

Currently, o-page does not support path aliases, but it's a great feature that I will add later.
Regarding the layout, the UI framework based on ofa.js is currently under preparation and has made progress of about 20% completion. Once development is finished, I will notify you.

#97

@Devoperman
Hey bro, support for aliases is now available for the page module you need. Just update the version of ofa.js to 4.3.36.
Update link:

<EMAIL_ADDRESS>
Cross-domain page modules are not supported for the time being due to security issues.
You can find testing and usage examples at the following link:
https://github.com/kirakiray/ofa.js/tree/main/test/cases/alias-page

@Devoperman
Hey bro, support for aliases is now available for the page module you need. Just update the version of ofa.js to 4.3.36. Update link:

<EMAIL_ADDRESS>
Cross-domain page modules are not supported for the time being due to security issues.
You can find testing and usage examples at the following link:
https://github.com/kirakiray/ofa.js/tree/main/test/cases/alias-page

Thank you for your work,
I've noticed the PR, you're very efficiency, I am trying this new feature now, and it's perfectly working now.

About UI and framework, how can we contribute to the project? It will be nicer to point out how can we do for ofa.js, I am not qualified enough for make significance contribution to ofa.js but I will see what we can do in the furture.
Thanks.

About UI and framework, how can we contribute to the project? It will be nicer to point out how can we do for ofa.js, I am not qualified enough for make significance contribution to ofa.js but I will see what we can do in the furture. Thanks.

Thank you for your attention. I have learned that two partners are currently developing a UI framework based on ofa.js, but they have not yet disclosed the repository address. Meanwhile, our official team is also working on a framework called PunchUI. Currently, there are only two developers, so progress may be a bit slow. We also have some plans that have not been initiated.
The framework is just getting started and is mainly spreading among developers in China. We hope to promote it in other countries, sparking the interest of like-minded individuals to collectively build this ecosystem. However, due to current resource limitations (lack of time, and personal English proficiency to be improved), we are unable to invest more effort into further promotion. Would you be able to help us introduce this framework to people around you?
Once again, thank you for your support.


Use pkg_gov_uk_dashboards package

Also replace local copy of components with version inside of the package.

Top drawer idea @MattSutton17!


window size is hardcoded (44khz HiFi-GAN)

Congratulations and thank you for this great work.
We were able to easily adapt it (doubling fft params and changing upsample rates to [8,8,4,2]) to produce 44khz 16bit audio with very high quality.
The line below has the window size hard coded to 1024. It should be replaced with win_size.
https://github.com/jik876/hifi-gan/blob/6b97a5fcf8cc9068188e7bcf720187394e7884ce/meldataset.py#L59

Thank you very much! Your work has helped us a lot.
It would be very good information for those who want to apply HiFi-GAN to synthesize 44kHz audio.
I've updated the code you mentioned. Thanks for letting us know!

Hi, which params comprise the 'fft_params'?
Thank you.


chore: updated redirect for udhiya project

Modified redirect of udhiya project link to the new campaign

@smsalmanshah Masha Allah! Your first contribution br @smsalmanshah haha I am so happy to see this 😁


charged-ieee:0.1.3, dashing-dept-news:0.1.1, unequivocal-ams:0.1.2 and wonderous-book:0.1.1

I am submitting

[ ] a new package
[x] an update for a package

Approve


regulator: X-Power AXP192 PMIC support

This update simply supports X-Powers AXP192 PMIC, tested with M5Stack StickC_Plus development board, supports setting BUCK1,2,3 and LDO2,3 startup voltage.

@imliubo this is very cool, thank you for the work on this already! Also thanks for using the opportunity of this PR to clean-up the m5stickc_plus device tree.
It would be great if you could make all the changes be separate commits, since some of them are not strictly speaking related to AXP192. You will need to rebase/force-push when that's done. I.e have the following commits

clean-up of the M5stick devicetree
add driver
enable LVGL sample for m5stickCplus

@kartben Thanks for review, first time work with this awesome project, I will clean my commit and push again, if have any problem please let me know.

@kartben Commit clean-up and force-push done, pls review, thanks for your suggestion, it help me a lot :)

I will be assisting iamliubo with the code fixing and interpretation.

@aasinclair @gmarull Thanks for review. I got flu just feel better now, today I will be dealing with the above great advice, thank you so much!

Hi @aasinclair @gmarull @kartben , the driver code refactoring is complete, request to review again.
Now support those API:

enable/disable output
count/list voltage
set/get voltage

Here is sample test log with shell command:
*** Booting Zephyr OS build zephyr-v3.3.0-4004-g52eaa0694606 ***
uart:~$ regulator disable LDO2  # m5stackc_plus screen backlight turn off
uart:~$ regulator enable LDO2  # m5stackc_plus screen backlight turn on
uart:~$ regulator vget LDO2
3.300 V
uart:~$ regulator vset LDO2 2.95V 3.1V
uart:~$ regulator vget LDO2
3.000 V
uart:~$ regulator vget BUCK2
2.275 V
uart:~$ regulator vget BUCK3
3.300 V
uart:~$ regulator vget BUCK1
3.300 V
uart:~$ regulator vget LDO3
3.300 V
uart:~$ regulator vlist LDO2
1.800 V
1.900 V
2.000 V
2.100 V
2.200 V
2.300 V
2.400 V
...
uart:~$

But I found a problem,the first communication between AXP192 and esp32 always fails, here is some detail.

code link
When initializing, the first time read the registers of AXP192, it always fails(any registers always fails). I am not sure whether this is the problem of the I2C driver or the problem of the AXP192 driver. If have any suggestions, please let me know.

When initializing, the first time read the registers of AXP192, it always fails(any registers always fails). I am not sure whether this is the problem of the I2C driver or the problem of the AXP192 driver. If have any suggestions, please let me know.

Have you got a scope to look at this more closely?
If so take a close look at SCL before the first transaction.
I have seen this when the I2C pull-ups are not enabled at initialisation:
https://github.com/zephyrproject-rtos/zephyr/pull/58081

When initializing, the first time read the registers of AXP192, it always fails(any registers always fails). I am not sure whether this is the problem of the I2C driver or the problem of the AXP192 driver. If have any suggestions, please let me know.

Have you got a scope to look at this more closely? If so take a close look at SCL before the first transaction.
I have seen this when the I2C pull-ups are not enabled at initialisation: #58081

Works!

please add a device entry in tests/drivers/build_all/regulator as well.

I am very sorry for not continuing this PR for a long time, i am a little busy those days, I saw @MrMarteng is also doing the same work (doing PMIC support for M5Stack devices, thanks very much!), which PR should we continue to prevent duplication of work? I see @MrMarteng PR has mfd layer support, that means this 2 RP has some a little different.
Any ideas? @kartben @aasinclair @gmarull

I am very sorry for not continuing this PR for a long time, i am a little busy those days, I saw @MrMarteng is also doing the same work (doing PMIC support for M5Stack devices, thanks very much!), which PR should we continue to prevent duplication of work? I see @MrMarteng PR has mfd layer support, that means this 2 RP has some a little different.
Any ideas? @kartben @aasinclair @gmarull

Hi @imliubo, @gmarull, @aasinclair, @kartben
first of all, I would like to apologise, that I have created a second PR for axp192 support. If I would have seen this PR before I would have collaborated on it. Nevertheless I have put a lot of effort in the regulator implementation and already started to work on other features of this PMIC, as the M5Stack Core2 module uses even more features of this IC (e.g. LCD reset gpio signal).
@gmarull mentioned that imliubo's PR is more advanced in review stage, but I am not sure if this actually is the case. So I would like to make a case for proceeding with my PR (#58809) regarding the regulator implementation. Here are some reasons that speak for it from my point of view:

My variant includes additional functionality:

I added a feature to disable regulators on startup (still unsure of this is the right approach, @gmarull your feedback would be very helpful here)
Workmode control for DCDC1-3 is implemented
Current limits are published via get_current_limit() interface.
I added the MFD layer as proposed by @aasinclair for other PMICs already. This seems to be an approach that just recently has been introduced.

Also from a formal point of view, I believe that my PR can be completed faster:

My PR is dedicated to regulator functionality only
it is based on a more recent main version. I already see some slight conflicts with imliubos PR (e.g. the x-power vendor specified has already been added by another developer within the last two weeks,... )
it already passes all required CI tests

Moreover, I already started working on the GPIO part for this IC, which also includes extending functionality in my MFD layer. According discussions are ongoing in discord. I plan to create a PR for the GPIO driver asap.
@imliubo , if you are ok with this, I would recommend to proceed with my PR. But please let’s connect on Discord (username: marteng), to align on the further proceeding to get M5Stack Core2 support into Zephyr. I just joined the community a week ago and I mostly available via discord.

@imliubo , if you are ok with this, I would recommend to proceed with my PR. But please let’s connect on Discord (username: marteng), to align on the further proceeding to get M5Stack Core2 support into Zephyr. I just joined the community a week ago and I mostly available via discord.

+1, I agree that your PR is probably more complete at this point. Maybe this one could be refocused on M5StickC-Plus specifically, updating its Devicetree to use your new driver when ready, and contributing the LVGL sample overlay?

@MrMarteng Agree, it may be better to continue to promote your PR.This PR don't have MFD support and no GPIO function support.Your PR support is better and more powerful.And thank you very much for your support of M5 devices.  When you PR is ready, I may support other M5Stack develop boards with you AXP192 support.
By the way,we use some new PMIC(AXP2101) for our new board, it's not compatible with AXP192,i think i can send you a sample to test and maybe you can help us support this new PMIC in zephyr for our new board(CoreS3)? I will contact you on Monday.
@kartben I think continue with @MrMarteng PR is better for long-term think. And as our(M5Stack), we can support a new M5CoreS3, hope it can help @MrMarteng do AXP2101 support.

Thank you. I am happy to support you on m5stack device integrating into Zephyr. AXP2101 looks more complex, but once AXP192 support is finished, including fuel gauge and sensors, that should not be a problem.
Looking forward to meet you next week.

alternative merged https://github.com/zephyrproject-rtos/zephyr/pull/58809


Bugfix with nchan/binfactor mismatch to make sure it always divides nicely

Sometimes nchan doesn't divide nicely by binfactor in the image staging steps, which can cause problems where final channels in the cube can be missing data. This should fix that

This is merged in #214


Add support for customizing modes to display line numbers.

Adds two additional custom variables and support for updating
the display of line numbers based on a change to the
rational-ui-display-line-numbers variable.
Added the 'rational' group to each of the custom variables.
Supporting :set on the rational-ui-display-line-numbers  allows someone to specify:
(custom-set-variables '(rational-ui-display-line-numbers t))

after (require 'rational-ui) and still have the intended effect.

I would suggest to add line numbers to prog-mode-hook and not to text-mode-hook, maybe as default.  Still have list of modes, of course.
Would make more sense for me, at least.

The original code looked like:
(add-hook 'conf-mode-hook #'display-line-numbers-mode)
(add-hook 'prog-mode-hook #'display-line-numbers-mode)
(add-hook 'text-mode-hook #'display-line-numbers-mode)

Which is why I included text mode as well. I agree it is probably better to leave that one off of the default list.

Thanks a bunch!


Possible to enable more CSS styles in span and div in Markdown blocks?

Here are some requests:
display
box-shadow
background-image
!important
border-radius
Is this possible and recommendable?

@istride suggests that this is likely better as part of #1466
Allow Admins to upload additional CSS files which create classes. Those classes can be referenced as styles in Markdown blocks (I have tested this as possible, see bottom of page).


[1.18.2] Conveyor and Transporter Filters Not Behaving Correctly

DO NOT REPORT AN ISSUE IF YOU HAVEN'T TESTED THE ISSUE WITH THE LATEST VERSION IN CURSEFORGE
Industrial Foregoing Version: industrial-foregoing-1.18.2-<IP_ADDRESS>-8.jar
Titanium Version: titanium-1.18.2-3.5.6-38.jar
Crashlog If Applicable (Upload to pastebin/gist): N/A
In the latest version of IF, I cannot add an item to filters for conveyor upgrades and item transporters. A blacklist or a whitelist can be selected, but no item can be added for filtering purposes. Right- and left-click do not work as they are expected to work. If there's a specific way to add the item to the filter, it is not documented in the Patchouli manual.

@NyvexOfShadows I managed to get it working once earlier and spent a while trying to replicate what I did. The good news is that there is a workaround.
The filter doesn't accept a dragged item at all. Instead place the desired item on the hotbar as your held item. Open the GUI and click the filter and it should show up as you'd expect.
Little bit funky, but at least this is usable :)

@NyvexOfShadows I managed to get it working once earlier and spent a while trying to replicate what I did. The good news is that there is a workaround.
The filter doesn't accept a dragged item at all. Instead place the desired item on the hotbar as your held item. Open the GUI and click the filter and it should show up as you'd expect.
Little bit funky, but at least this is usable :)

Unfortunately, this workaround doesn't work for fluid transporters, as you can't hold fluid in your hand. Adding buckets of fluid into the filter doesn't work (e.g. set a receiving transporter to allowlist-mode, and add a bucket of water to the filter; water from the sending tank will not be moved to the destination tank)


[FLINK-20871][API/DataStream] Make DataStream#executeAndCollectWithCl…

…ient() public

@flinkbot run azure re-run the last Azure build

@flinkbot run azure re-run the last Azure build

@flinkbot run azure

@flinkbot run azure

Close this PR since I don't know how to re-trigger the Azure CI build after previous run failed due to style check error

Close this PR since I don't know how to re-trigger the Azure CI build after previous run failed due to style check error


Update dependencies and fix voting logic

Closes #24
Closes #21
Updates all node modules to fix security vulnerabilities and interoperability.
Also adds a little fix for voting

Thanks for the PR!


Add flomo extension

Description
This is an extension which allows you to send memos to flomo app through Raycast directly and attach tags conveniently just by checkbox.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi @LogicOber 👋
Did you see this extension before making yours? Seems like they are similar

If your extension has the same functionality, then we can ask @ahonn if it makes sense to make this superseed the other one 🙂

What do you say @ahonn - could this superseed your Flomo extension?

Are you still available @ahonn

What do you say @ahonn - could this superseed your Flomo extension?

I'm sorry I didn't notice this before. I think the two are different, I still prefer my own, I prefer to modify the my extension if more functionality is needed, and provide the necessary switches, this extension does not appear to be able to turn off some of the functionality. It's too complicated for me.

What are the differences besides more functionality? Your extension can send messages to Flomo, so can this, right?

What are the differences besides more functionality? Your extension can send messages to Flomo, so can this, right?

Yes, both can send messages to flomo.
This one just has some additional functionality. So I think it's just a matter of preference and we should add these functionalities on top of the original extension instead of creating a new one separately. I am happy to merge these optional configurations as long as they can be turned off when not needed.


Upgrade rtorrent to 0.9.6

https://github.com/arakasi72/rtinst/blob/master/rtupdate also needs an upgrade

Thanks for this, I actually made some changes to variable declarations to make it easier to change versions in the future, so that is why I am closing this pull request.


Combine all of the translations in one file for each language

Thanks for the pull request, @Amr-Nash! Please note that it may take us up to several weeks or months to complete a review and merge your PR.
Feel free to add as much of the following information to the ticket as you can:

supporting documentation
Open edX discussion forum threads
timeline information ("this must be merged by XX date", and why that is)
partner information ("this is a course on edx.org")
any other information that can help Product understand the context for the PR

All technical communication about the code itself will be done via the GitHub pull request interface. As a reminder, our process documentation is here.
Please let us know once your PR is ready for our review and all tests are green.
:warning: We can't start reviewing your pull request until you've submitted a     signed contributor agreement     or indicated your institutional affiliation. Please see the CONTRIBUTING     file for more information.     If you've signed an agreement in the past, you may need to re-sign.  See     The New Home of the Open edX Codebase     for details.
Once you've signed the CLA, please allow 1 business day for it to be processed.  After this time, you can re-run the     CLA check by adding a comment here that you have signed it.  If the problem persists, you can tag the @openedx/cla-problems team in a     comment on your PR for further assistance.

@Amr-Nash Even though your pull request wasn’t merged, please take a moment  to answer a two question survey so we can improve your experience in the future.


Attempting to enable hyper causes azure_core to fail to compile

Hello, I'm attempting to use these crates to access Azure Blob Storage. Because this is a new feature for an existing project, the code already uses Hyper under the hood, so I was attempting to replicate that in the use of these crates as well. However, when I attempt to enable hyper on the azure_core crate, it fails to compile with a large number of error messages. This is true even if I use default-features = false to attempt to disable the default reqwest support.
Among the issues are misuse of the hyper_rustls crate (with_native_roots is a function on the HttpsConnectorBuilder in 0.23, not the HttpsConnector), there is no new_unexpected_status_code in HttpError, and more.
Is the use of hyper currently supported with these crates, and if not, is there anything that can be done to help get support for it off the ground? Thanks!

So far we haven't had any issues with using reqwest. We originally wanted to use hyper because we understand it to be more performant, and to just reduce the total size of our dependency graph.

You could implement HttpClient to pass in a version that does not use reqwest. #760 removes this defunct feature. After it is merged, I'll have another PR for making reqwest optional.


Loading

Just loading

Make sure you haven't ran out of firebase database threshold.
If it's the first time make sure you have done the setup correctly


⚠ SceneTime has degraded performance

In ae6ca40, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1165 ms

Resolved: SceneTime performance has improved in 9f10b51.


White color screen on Debian Linux armv7l

Hello there,
I have a problem with my application building for Linux armv7l. The problem comes after approximately three days of working application.  The screen went blank.

In the operating system proccess I see the next:

When the application is working good the proccess are:

my temporary solution for this problem is have a bash script in the operating systema which is checking the proccess of my application  where "--type=renderer" and restart the application when is not working.
the name of my application is consolaview, and the main script is:
const electron = require('electron');
const app = electron.app;
const BrowserWindows = electron.BrowserWindow;
const path = require('path');
const url = require('url');
var mainWindow;
app.on('ready', () => {
    app.commandLine.appendSwitch('disable-web-security');
    let configuracion = {
        width: 840,
        height: 440,
        backgroundColor: '#ededed',
        devTools: false,
        contextIsolation: false,
        autoHideMenuBar: true,
        'node-integration': 'iframe',
        'webPreferences': {
                   'webSecurity': false,
	           'defaultFontSize': 12,
                   'defaultMonospaceFontSize': 13,
	           'zoomFactor': 0.98
        },
        fullscreen: true
    };
    mainWindow = new BrowserWindows(configuracion);
    let conexion = () => {
            mainWindow.loadURL('file://' +  __dirname + '/main.html', {
                mode: 'no-cors'
            });
    };
    mainWindow.on('closed', () => {
        mainWindow = null;
    });
    conexion();
});

app.on('window-all-closed', () => {
  app.quit()
})

The version of Electron is:
electron "1.7.9",
electron-packager "10.1.0"
The info of my environment is:

My question is: Exist other solutions for this problem?

Does this happen in any other target platform/arch, or just armv7l?

only happens in armv7l

This doesn't sound like an Electron Packager specific problem, but rather an issue with Electron proper. I would suggest seeing if anyone else in the Electron community has this problem, and if necessary, filing a bug in the Electron issue tracker.

I met same problem on raspberrypi.
armv7l.

This is likely https://github.com/electron/electron/issues/12937 (and not caused by Electron Packager itself).


NiFi-1808 Added GetMQTT and PutMQTT processors

These are basic processors to get and put MQTT messages. Only qos=0 is supported and test code is just a template.

Talked to @r-b-us on Twitter[1] about opening this PR to contribute his general MQTT processors for NIFI-1808. I will fix any issues that come up.
[1] https://twitter.com/JoePercivall/status/724659038663798784

@r-b-us I created another PR[1] so that I could work on it. I have your original commit as the underlying base and I did work on top of it so you can close this PR whenever you're able.
Any thoughts or feedback is appreciated, and once again thanks for contributing your work!
https://github.com/apache/nifi/pull/392

Ok - good luck!


:bug: array form filed name should not contains bracket which led to invalid fieldname in ts codegen

Describe the PR
Change FormName. Trim bracket in filedname
Relation issue
e.g. https://github.com/swaggo/swag/pull/118/files
Additional context
In gin binding, an array parameter goes like
type Teacher struct {
  Books []string `form:"books[]"`
}

In swaggo/swag less than v1.8.10, it's field name should comes from ps.Filed.Names[0] which is "Names", which goes to toLowerCamelCase and generate "names".

func (ps *tagBaseFieldParser) FieldName() (string, error) {
	var name string
	if ps.field.Tag != nil {
		// json:"tag,hoge"
		name = strings.TrimSpace(strings.Split(ps.tag.Get(jsonTag), ",")[0])

		if name != "" {
			return name, nil
		}
	}

	if ps.field.Names == nil {
		return "", nil
	}

	switch ps.p.PropNamingStrategy {
	case SnakeCase:
		return toSnakeCase(ps.field.Names[0].Name), nil
	case PascalCase:
		return ps.field.Names[0].Name, nil
	default:
		return toLowerCamelCase(ps.field.Names[0].Name), nil
	}
}

Since v1.8.11, FormName was introduced to parse form tag, which generates books[] tags, which lead to bad codegen in ts.
Ts code changes, which is not generated by tools, write by hand.
From:
const Teacher = {
  books: []
}

To:
const Teacher = {
  "books[]": []
}

Teacher."books[]" is not working in ts, which only can be use like Teacher["books[]"].

Hello, rebase your branch on the latest master, please.

Hello, rebase your branch on the latest master, please.

Already rebase to latest master.

Rebase again, please.

Rebase again, please.

done


[KVIRT-192] Use a KubeVirt VM to spawn the DHCPServer

KVIRT-192 Add support for DPDK VMs
KVIRT-210 Annotate pod/vm after allocation

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@ae0fc02). Click here to learn what that means.
 Consider uploading reports for the commit 655eb4a to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff            @@
##             master     #46   +/-   ##
========================================
  Coverage          ?   0.00%
========================================
  Files             ?       1
  Lines             ?     618
  Branches          ?       0
========================================
  Hits              ?       0
  Misses            ?     618
  Partials          ?       0

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

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


Support for OpenTelemetry interceptors

Describe the solution you'd like
To support capturing tracing data, it would be amazing to add out-of-the-box support for the OpenTelemetry standard into the connect-go client/server. This would likely be in the form of an interceptor function that can be optionally added to a server or client instance, similar to what is made available in opentelemetry-go-contrib. That library does provide instrumentation for other well-known packages, so it could be possible to instead add a new instrumentation for connect-go inside their library.
Describe alternatives you've considered
Within my own playground for connect-go and connect-web I have been able to create a custom solution that uses the net/http instrumentation on the server-side, and a custom client-side interceptor to attach some relevant tracing data and the parent traceID to context.
My custom solution does work when using both the grpc-client and connect-go client to make requests, the resulting traces show the parent from the client and the child spans within the server.
With a better defined standard offered either in this library or as an instrumentation in opentelemetry-go-contrib would allow other developers to easily add support for OpenTelemetry with out-of-the-box tracing attributes with their connect-go server/client instances.

Hey @alehechka - good news! Internally, we're planning to migrate from OpenCensus to OpenTelemetry. We need standardized OTel interceptors for Connect anyways, so we're going to open-source them as a separate module. We're planning to ship these interceptors as part of #343, which we hope to wrap up by early October at the latest.

I'm now actively working on this.

@akshayjshah Hi, are there any more updates for this yet? Thanks.

I'm perpetually pulled into other work 😢 This issue is clearly important, though, so I'm handing it off to @joshcarp to make more rapid progress.

@akshayjshah @joshcarp Hi, are there any more updates for this yet? Thanks.

Hey @nomad-software
Still WIP and hasn't been abandoned

Thanks @joshcarp for the update. Do you have an ETA for this please? I think it was pencilled in for the connect v1 release but has slipped since.

hey @nomad-software
The bufbuild/connect-opentelemetry-go has been made public although it is unstable (so is opentelemetry I guess).
There's still active development on it as it doesn't support streaming handlers/clients for tracing.

@joshcarp That's awesome, thanks a lot! :+1:

We'll be tagging a release of bufbuild/connect-opentelemetry-go in a few days, so I'm going to close this issue. Sorry for the many, many delays everyone!

And, as a final update: https://buf.build/blog/connect-opentelemetry-go/


Subtitler.py AssertionError: Audio source must be entered before listening

Exception in thread Thread-2:
Traceback (most recent call last):
File "D:\Software\MiniConda\envs\vioceAI\lib\site-packages\speech_recognition_init_.py", line 750, in threaded_listen
audio = self.listen(s, 1, phrase_time_limit)
File "D:\Software\MiniConda\envs\vioceAI\lib\site-packages\speech_recognition_init_.py", line 651, in listen
assert source.stream is not None, "Audio source must be entered before listening, see documentation for AudioSource; are you using source outside of a with statement?"
AssertionError: Audio source must be entered before listening, see documentation for AudioSource; are you using source outside of a with statement?
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "D:\Software\MiniConda\envs\vioceAI\lib\threading.py", line 980, in _bootstrap_inner
self.run()
File "D:\Software\MiniConda\envs\vioceAI\lib\threading.py", line 917, in run
self._target(*self.args, **self.kwargs)
File "D:\Software\MiniConda\envs\vioceAI\lib\site-packages\speech_recognition_init.py", line 754, in threaded_listen
if running[0]: callback(self, audio)
File "D:\Software\MiniConda\envs\vioceAI\lib\site-packages\speech_recognition_init.py", line 201, in exit
self.stream.close()
AttributeError: 'NoneType' object has no attribute 'close'
Any tips on this?

I also met this problem. Have you solved it？

Encountred it aswell

Okay turns out it was a layer 8 problem :p ....
Solution: Check your env file.
# VoiceMeeter Aux Output (VB-Audio VoiceMeeter AUX VAIO)
# Where your application audio (voice-chat) will play from
AUX_OUTPUT_ID=

Here i used a number that pointed to "Aux Input (VB-Audio VoiceMeeter AUX VAIO)"
Of course it should point to "Aux Output [...]"


Add unix seteuid()

Adds prototype for unix seteuid() as defined here.

@bors: r+
Thanks!

:pushpin: Commit 4340d17 has been approved by alexcrichton

:hourglass: Testing commit 4340d17 with merge 70f2986...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 70f29860875573d6d6660e1d76faee88fa941b47 to master...


doc(README.md): use https for online OpenCC

Since https protocol is supported, https should be used instead of http.

Besides, I found that recently connection to the website is very slow. Sometimes I cannot even connect to the website. And it is the same for https://byvoid.com/. I think we need some kind of configuration.

@sgalal I can connect very quickly. Possibly related to your network?

@sgalal I can connect very quickly. Possibly related to your network?

I found the problem and opened a new issue for that: #354

Interesting. You have IPv6 setup on your end? If so, then #354 might be the cause. (I thought IPv6 is still not so common nowadays)

Merged. Thanks.


New genome group not showing up in Protein Family sorter tool

I just made a new group of all the complete Mycobacterium genomes.  I can see them in my workspace, but when I open up the Protein Family Sorter, that group is not present.  It only shows the groups I created previously.

I cannot reproduce this problem. I have created one group with 20 genomes and confirmed in the workspace UI and moved to Protein Family Sorter in Tool menu. The new group showed up immediately.

same as #136


SOLR-17541: LBSolrClient implementations should agree on 'getClient()' semantics

With this PR makes LBHttp2SolrClient maintains an instance of HttpSolrClientBuilderBase per "Base Url".  This makes the semantics of LBHttp2SolrClient#getClient consistent with that of the older LBHttpSolrClient.
Behavior changes:

LBHttp2SolrClient generates a Http Solr Client per base url

(1) at constructon
(2) whenever a previously-unseen base url is encountered
NOTE: The Map holding the clients may grow unbounded; there is no cleanup short of callng close().

LBHttp2SolrClient mutates the baseSolrUrl variable of the caller-supplied instance of HttpSolrClientBuilderBase whenever it creates a new Http Solr Client.
Both LBHttp2SolrClient and CloudHttp2SolrClient always own the internal/delegate clients.  They are now always closed by us on close().

The following class definitions are changed in the SolrJ public API:

LBHttp2SolrClient

from: LBHttp2SolrClient<C extends HttpSolrClientBase> extends LBSolrClient
to: LBHttp2SolrClient<B extends HttpSolrClientBuilderBase<?, ?>> extends LBSolrClient

LBHttp2SolrClient.Builder

from: Builder<C extends HttpSolrClientBase>
to: Builder<B extends HttpSolrClientBuilderBase<?, ?>>

All methods on LBHttp2SolrClient.Builder return a Builder<B> instead of a Builder<C>

The following are removed from the SolrJ public API:

method CloudHttp2SolrClient.Builder#withHttpClient
constructor LBHttp2SolrClient.Builder(C solrClient, Endpoint... endpoints)

replaced with: public Builder(B solrClientBuilder, Endpoint... endpoints)

method LBHttp2SolrClient.Builder#withListenerFactory

renamed to LBHttp2SolrClient.Builder#withListenerFactories (replace any existing)
add  LBHttp2SolrClient.Builder#addListenerFactory (add to existing)

method HttpJdkSolrClient#requestWithBaseUrl (main only, never released)

The following are marked @lucene.experimental

method Http2SolrClient#requestWithBaseUrl (main only, never released)
interface SolrClientFunction (main only, never released)

As a blocker for this PR, I am getting many seemingly-unrelated solr-core test failures.  For instance, PostToolTest#testBasicRun.
Maybe this is similar to the problem I describe in #2242, in that by sharing resources between client and server in a unit test, we get automatic PKI authentication, on which the tests depend.  If this speculation is true, this would be merely a test bug.
Otherwise, perhaps solr-core needs to be able to share instances of Http2SolrClient across its internals?  The major change here being callers can only pass a Builder to LbHttp2SolrClient and CloudHttp2Solrclient and not a pre-built delegate client.
In either case I do not know how to continue to make progress so any advice is appreciated.

The problem is that org.apache.solr.handler.component.HttpShardHandlerFactory#setSecurityBuilder is being called but it only affects the built client, not clients built separately (in LB).  My suspicion is that your conversion of passing the Builder as a template instead of an existing client should switch back to the client as a template and then remember to call org.apache.solr.client.solrj.impl.Http2SolrClient.Builder#withHttpClient from the template.

your conversion of passing the Builder as a template instead of an existing client should switch back to the client as a template

I am not sure this ticket/PR has much value if we continue having the caller pass in a pre-built delegate client instead of a Builder.  LBHttp2solrClient needs to create a client per base url, but the caller only supplies one.  Yet LBHttp2SolrClientmight not know how to correctly clone that client, keeping in mind LBHttp2solrClient is now generic. It seems to me that passing in the pre-built client is more of a relic of the days before we used Bulders in solrJ, and not a really great API decision.  I was hoping to improve that here.

Okay with me to stay with the builder.  Probably add a new method to org.apache.solr.security.HttpClientBuilderPlugin for the builder, overloading setup.
As an aside, I'm totally confused about our authentication plugins, especially PKIAuthenticationPlugin as it apparently has a pivotal role, even when there's know "PKI" going on!  CC @janhoy I suspect you might know

This LGTM, pending figuring out the test-failure issue and adding a CHANGES.txt entry that highlights the deprecations/removals.

The following were not removed, but perhaps should be considered to be marked "internal" or "Experimental"

+1 - Both seems like good candidates for a "lucene.experimental" annotation.  (Presumably there should be a "solr.experimental", but I don't think that exists...)

Probably add a new method to org.apache.solr.security.HttpClientBuilderPlugin for the builder,

Thank you for the insight on this. I went ahead and did this, but its a bit ugly.  I'd rather not have both, but then again, I want to minimize changes to solr-core with this PR.
Besides, @dsmiley, I appreciate the change to synchronize on the Builder.  That was a pretty bad miss on my part!
I also added @lucene.experimental to the two places discussed.

PKIAuthenticationPlugin as it apparently has a pivotal role, even when there's know "PKI" going on!

PKI plugin handles incoming internal requests from other nodes in the cluster. Then there is indeed PKI going on 😉 It is registered whenever any auth plugin is active.

I am curious to know opinions as to how to handle deprecations here.  This PR introduces several API changes (see description) but most of the replacement APIs will never exist in any 9.x version.  We can add a @Deprecated annotation to CloudHttp2SolrClient.Builder#withHttpClient, with a suggestion to use #withInternalClientBuilder instead.  Beyond that, is there anything else we can/should do in a theoretical Solr 9.9 to warn users of the upcoming changes?

RE deprecations:  A good call out but I don't think we should worry much about deprecations if we can't provide the alternative.  At least not for LBSolrClient which is rather internal, I think.

So this would be Solr 10?

Yes.  When I read the description on this ticket, it seemed to me a good opportunity to improve our API with the upcoming major release.  It seems wrong we clone the passed-in client.  This is especially important if we want to eventually have merely one LB Client, one Cloud Client and one Cluster State Provider that can take any subclass of HttpSolrClientBase.

Can you point me at such so I can appreciate the problem better?

My apologies, I think I misstated what is going on earlier.  PKIAuthenticationPlugin on setup injects a RequestResponseListener into the passed-in Client.  I wanted to ensure the same Listener gets injected both in the Builder and the Client, in case it matters.

Since the direction is SolrClient immutability, I think this auth/PKI setup method should only the builder (mutable).  Is this realistic?

Since the direction is SolrClient immutability, I think this auth/PKI setup method should only the builder (mutable). Is this realistic?

I fully agree this is the right direction to take.  Unfortunately this probably requires a minor redesign to both UpdateShardHandler and HttpSolrClientProvider, which is out-of-scope here.

I added a CHANGES.txt entry to this PR and plan to merge this early next week.  I also will separately add a deprecation on CloudHttp2SolrClient#withHttpClient in branch_9x, to be released with Solr 9.9.


GoLang like json serialization built into Dart in stead of using built_value

Cross posting from flutter-dev message.
I was watching the Episode 2 of "The boring Flutter development show" on data serialisation using  built_value (thank you guys for putting together a good show and it's interesting to see you guys struggling with built_value and serialisation). I believe built_value though useful but unnecessarily complex (reminds me about bloated Java) compared to GoLang's approach to json serialisation where we just write (object) models (including complex and nested) and Marshal/Unmarshall to json without much thinking about meta programming! Considering that both Go and Dart coming from Google, Dart dev team should consider adapting GoLang's way of serialisation.

Flutter 1.2.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 8661d8aecd (13 days ago) • 2019-02-14 19:19:53 -0800
Engine • revision 3757390fa4
Tools • Dart 2.1.2 (build 2.1.2-dev.0.0 0a7dcf17eb)

Archan

It's not that Dart doesn't offer these. But they are not available in Flutter, because mirroring is disabled.
Go would face the same issue
You can use json_serializable which is easier than built_value as an alternative

Looks like json_serializable also need meta, annotation, code generation etc, though easier compared to built_value.
A sample Go code for json serialization is easy as following (no meta, no annotation).
type Message struct {
    Name string
    Body string
    Time int64
}
m := Message{"Alice", "Hello",<PHONE_NUMBER>881547000}
b, err := json.Marshal(m)

b := []byte(`{"Name":"Bob","Food":"Pickle"}`)
var m Message
err := json.Unmarshal(b, &m)

I think Dart should have something silimar unless the language construct blocks the feature.

As I said, Go would suffer from the same problem in Flutter. This use mirroring to work, which isn't enabled in Flutter
If you're using a web app, you can already use something similar to go:
https://www.dartlang.org/guides/libraries/library-tour#dartconvert---decoding-and-encoding-json-utf-8-and-more

Go does not allow unmarhalling of interfaces, you need to know the concrete type of the object being unmarshalled. That makes it much harder for Dart to do something similar because we use interfaces much more than Go does.
Dart also uses first-class function values much more than Go, and those also cannot be serialized by Go's JSON marhsaller.
It's not impossible to introduce some kind of object marshalling primitive which serializes the internal state of an object, and then allows deserializing of that data again if you know the concrete types of everything, but I fear that that will only very rarely be the use-case in Dart. Any time you use an interface type (any type with more than one concrete subclass) or any function type, marshalling will have to fail, so effectively we are restricted to simple value types with no function valued fields.

Actually built_value does support interface types :) ... as well as serialization/deserialization without knowing the types at all. (Provided all values belong to the set of types you've declared to be serializable).
The wire format changes depending on whether types are fully known statically; if they are not, the type is specified on the wire. Of course we have to generate enough metadata/factories to deserialize.
Conceptually it's fairly similar to Java's built in serialization, but the wire format is much more forgiving, and can map to formats used by other systems.
We can't do anything about function types, of course, but this hasn't been a problem in practice.
I'd definitely like to see more language support in this area, but it's a big topic. I imagine, if we do make progress, it will be via something like data classes.


run LitServe with minimal dependency

Before submitting

[ ] Was this discussed/agreed via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?

What does this PR do?
After this PR, it won't be required to install PyTorch to run LitServe.
Also, adds test to make sure LitServe doesn't leak any extra requirement.
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in GitHub issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

@Borda could you please help review so that we can merge?


How to determine if Pusher instance is already connected/subscribed? Alternatively how to avoid crashing due to fast refresh?

My RN environment uses fast refresh, which will run the constructor function after I make any changes to the code. On first run there are no issues and I connect/subscribe/receive events without issue. But once I make any changes at all the app will go through the constructor again and try to initialize Pusher a second time and gets as far as completing the onAuthorizer function and returning the data.
After this point it crashes and gives me the error "Exception in native call from JS" with the last stack trace reading:
onAuthorizer
PusherWebsocketReactNativeModule.kt:169
I have not been able to get around this. I cannot keep a record of having connected in my state because it resets as part of the refresh process with the new code, though the Pusher instance is obviously not reset this way.
I have tried disconnecting before I connect, and unsubscribing before I subscribe to my private channel but that has made no difference.
If I could do something like if(Pusher.isConnected) then I could avoid this problem but that does not seem to be an option?
How can I get past this problem?

...I have discovered "pusher.connectionState" which solves my issue.
I wasn't able to find it in the documentation on the front page here and the pusher.com/docs refer to pusher.connection.state which was close but not valid. I think earlier I must have copied pusher.connection and then typed . to see my auto complete options, found nothing, and moved on.


Stage 3 reviews!

Here are the people who have signed up as reviewers for this spec that need to sign off before it can get to stage 3, per the notes:

[x] @jasnell
[ ] @allenwb
[x] @caridy

And of course the editor:

[x] @bterlson

Also, we have one "unofficial reviewer" whose feedback would be welcome:

[x] @ajklein

Useful resources, perhaps:

A convenient spec text link
An example of HostPrepareImportedModule, for HTML
https://github.com/domenic/proposal-dynamic-import/issues/4 is the only currently-outstanding issue, and it's about the spec mechanics of having "spec asynchronous" algorithms; thoughts welcome.

@domenic thanks a lot for getting this ready for stage 3, it is simple enough and small enough IMO. My only comment is about HostPrepareImportedModule, I think the name is misleading, I got confused at first. I guess I was associating it with HostResolveImportedModule but they are very different. I don't have an actual recommendation to name it, but it is something that we should probably look at.
👍
Btw: it is also the first time we have an abstract operation in 262 using NewPromiseCapability aside from the promise API definition itself :)

Awesome! Filed #18 to discuss the name. Much appreciated!

Overall looks good. A few comments (and apologies if there are dumb questions in here, it's my first time reviewing one of these specs to the extent required by stage 3):

The grammar is not complete. Instead, there's a parenthetical: "(Also, many other instances of CallExpression need to get ImportCall added to them.)". How feasible would it be to include all such modifications before the meeting? Presumably that work will have to be done at some point.
It seems strange that an exception thrown during evaluation of the AssignmentExpression results in a thrown exception at the callsite, while a failure in the ToString call results in a rejected promise. I would have expected a failed ToString to throw immediately just the same. Is your intuition that the ToString operation is happening "inside" the function body of import? This distinction seems unimportant to me, given that import() isn't really a function call anyway, but I could be convinced.

How feasible would it be to include all such modifications before the meeting? Presumably that work will have to be done at some point.

Happy to do that. It's pretty mechanical Ctrl+Fing, but I can indeed list them.

(oops, commented too soon)

Is your intuition that the ToString operation is happening "inside" the function body of import? This distinction seems unimportant to me, given that import() isn't really a function call anyway, but I could be convinced.

This is exactly the intuition. In particular,
import((() => { throw new Error(); })()).then(() => { });

should behave the same as
const arg = (() => { throw new Error(); })();
import(arg).then(() => { });

i.e. it should throw immediately at the call site. But the argument processing, just like any other invalid argument, should cause a rejected promise. I can see how it's a bit different for a syntactic form, but I think we should treat it more like a function than not.

Overall this looks solid. Other than the fact that Node.js would currently have difficulty performing the module loading completely asynchronous, it should be possible to abstract away that limitation behind the Promise interface so that there is little real impact on the actual code beyond performance. The fact that this would be limited to Script and Module Records is ++.
Pinging @bmeck for his input.

Added the missing static semantics. It turns out there were only three locations where it needed to be added, so I am glad @ajklein prompted me to do so.

Reviewers should be made aware that there have been some structural changes as a result of discussions in #24, which make the previously-imprecise "asynchronous completion value" mechanisms much more precise. This has changed a decent amount of the text, but hasn't really made any normative changes, so hopefully your reviews are still valid :). See https://github.com/tc39/proposal-dynamic-import/commit/b8de8717b67e0c9b46fe29b4ae324cb9bbc00084 for the changeset.

Feedback:

"The abstract operation must always complete with undefined": I'd say, "must always complete normally with undefined".
Third bullet of 1.1.2 should say "fails" instead of "succeeds".
Fifth bullet of same, given same arguments is incorrect since the signatures don't match. Say given the same referencingScriptOrModule specifier pair?
Sixth bullet of same, I don't know what "manipulate" means. It seems like the only important aspect here is that the promise is not resolve or rejected this turn. Therefore, maybe just say that rather than trying to overspecify?
Last paragraph of 1.1.2, don't know what "during an initial step" means.
DynamicImportPreparationFinishedJob feels like a troll ;) is "Preparation" necessary here?
2.2.1 step 2, "i.e. is not null" seems superfluous to me.

Signing off, though curious to see where Allen is going with the operator formulation.

Thanks @bterlson! I took care of all of those, except I think "i.e. is not null" is still valuable since it makes it clear why we're doing the assert, IMO.

Would you argue that all asserts should say "(i.e. )"? Eg. "Assert: Type(V) is Reference (i.e. not any other value)" or "Assert: Desc is a Property Descriptor (i.e. not an object or any other value)"? Personally I wouldn't want such a change.

No, just in the cases where you look at it and go "that's weird; what else could it possibly be?" To me it's a little surprising that GetActiveScriptOrModule() could return anything but a Script or Module so I found the i.e. helpful.

I think the functionality described by this proposal is a good idea  but there are still issues that I think need to be resolved before it is ready for Stage 3.

#23 concerns the syntax used for this operation and suggests use of an prefix import operator instead of a pseudo call-like syntax.  There are reasonable pro/con arguments for each approach. A choice needs to be made by TC39 consensus prior to advancing the proposal.

#26 raise a concern that the import operator may provide a covert communications channel that can penetrate membranes. (The lack of a way to eval modules may be preventing this from already being a problem for static imports).  Whether this is an actual problem and if so, whether a solution exists, needs to be resolved before advancing.

#24 (and #4) raises concerns about the specification mechanism used to describe the (potentially asynchronous semantics) of dynamic import.  I think we have a shared conceptual understanding of ab appropriate semantics but I don't think the proposed spec. text fully or correctly captures that semantics yet.  Perhaps this doesn't have to be a stage 3 blocker but stage basically means we want implementation work to start and that seems hard to do if we can't yet describe the semantics that needs to be implemented.

Thanks @allenwb! I agree we need to resolve #23 and, if there is an actual attack, #26, before proceeding. I think those will be resolved at the meeting. For #24, I personally think the current spec text is good to go, but if you're concerned about implementations not being able to understand its semantics correctly, I'd love to hear from any implementers with concerns.

Note that I removed the check next to my name.  I have completed my review but I have not unconditionally said that it should advance to stage 3.

That's fine. The check is meant to signify the completion of review, but I'm happy to let you check or uncheck the boxes as desired.

"sign off" is the questionable language.


Zhg pip version fix

pip upgraded to 10.0.1 due to OSX incompatibility with 9.0.1

Codecov Report

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

@@           Coverage Diff           @@
##           master      #87   +/-   ##
=======================================
  Coverage   70.51%   70.51%
=======================================
  Files          24       24
  Lines        2147     2147
  Branches      236      236
=======================================
  Hits         1514     1514
  Misses        612      612
  Partials       21       21

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 d857669...f8c4d50. Read the comment docs.