[RFC] Consider switching to httpx instead of requests

1. requests.Session would be really cool
huggingface_hub is a library essentially to make calls to the Hub. For that we are using requests which is great but has its limitations. requests has the concept of Session to keep a connection alive when doing multiple requests in a row. I made some experiments this morning and the gain is very substantial. The following snippet uses hfh to create a repo, upload 2 (almost empty) files and delete it. It's not perfect but quite representative to what users could do.
repo_id = create_repo("tmp_repo_id_lucain").repo_id
upload_file(repo_id=repo_id, path_in_repo="text.txt", path_or_fileobj=b"content")
upload_file(repo_id=repo_id, path_in_repo="lfs.bin", path_or_fileobj=b"content")
delete_repo(repo_id=repo_id)

I tweaked huggingface_hub and ran this snippet to run with and without requests.Session. Average execution time goes down from 9.3s to 5.5s (-40%). This gain comes from the fact that we don't start a new HTTPS connection at each call.
I also tried a real example when loading weights with diffusers when they are already cached. Discussion has been started by @patrickvonplaten yesterday (internal link).
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4", torch_dtype=torch.float16)

=> it turns out I save around 1s (from 4.6s to 3.7s) which is again quite substantial. In this particular case, diffusers could also be improved but it still highlights that huggingface_hub can do better.
Note: besides improving a lot the performances, being able to pass a Session object is also useful for users that needs to configure their proxy (and headers/user-agents/cookies/...). At the proxies can be configured in hf_hub_download and snapshow_download but not in HfApi.
2. But requests.Session is not thread-safe
I was about to push a draft PR to add an (optional) session parameter everywhere when I realized that doing so is not entirely thread-safe. The issue has been raised in 2015 and referenced quite a lot but the issue is not solved. It seems that most problems have been fixed by the underlying urllib3 package but it's not enough. See for example this issue reported in Dec 2022. I haven't investigated the why behind it but I think it's quite a no-go for us. We use threads to upload/download files (though the Session is less needed in that case) and any user can also make concurrent calls using HfApi (for example loop over repos and do something). Since it would be nice to still guarantee that HfApi is thread-safe, let's not use requests.Session.
3. Use httpx instead
httpx self-describes itself as HTTPX is a fully featured HTTP client for Python 3, which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2. What's interesting for us is:

it's very similar to requests. They have a compatibility guide and nothing things too difficult to handle.
it's guaranteed to be thread-safe
it's hopefully compliant as much as possible with http standards
(not a priority) switching to httpx would also be a good start if we want to support some async stuff some day.

4. Caveats and workarounds
Switching to httpx still has some drawbacks:

Community might be less used to it. Also it adds a new dependency.
httpx.HTTPError and requests.HTTPError are not the same objects (same for Response and Request). It's not so much an issue since huggingface_hub never return a Request/Response directly. However I think what we should do is to make HfHubHttpError inherit from both httpx.HTTPError and requests.HTTPError. This way we don't break any try/except implemented by downstream libraries
httpx do not follow redirects by default but we can enforce to do it. To keep compatibility, I guess we should do so (at least to still handle hf.co => huggingface.co)
stream=True is used once in hfh and behavior has changed for it => should be ok

5. What's next?
WDYT about it? Any hard feeling about not doing it? My take is that it's a good idea to do it now, deal with the few issues that will happen and then we'll be fine to build on top of it.
So basically the plan is:

Make a PR to switch from requests to httpx without adding features. Keep requests as a dependency.
Once we have httpx, use a session everywhere (called httpx.Client). Also deprecate proxies parameters since configuration can be handled by the user directly
(later) start to use async capabilities

tagging @sgugger @LysandreJik @patrickvonplaten @lhoestq @julien-c @osanseviero for feedback

I don't know enough about httpx to have a good opinion here, but from your points above it seems like it's very much worth changing to httpx if we're able to bring down latencies down significantly when doing multiple calls to the Hub in rapid succession.

maybe worth asking the community about this, too

As part of https://github.com/huggingface/huggingface_hub/pull/1394 I used requests.Session object to keep the connection alive between HTTP calls. To tackle the thread-safety issue, we now have a get_session() helper to get the current opened session. 1 session per thread is created to avoid mixing them. Sessions can be globally configured using configure_http_backend.
So no need for httpx for now. It would have been cleaner to have a single httpx.Client but adding a new dependency was too heavy compared to the implemented workaround. I'm closing this issue as "wont-fix". Let's revisit httpx usage if we introduce async at some point.


HubZero visit

Meeting with HUBzero/Nathan to discuss how HUBzero and PresQT can work together via API.
Here is a link to to notes taken: https://docs.google.com/document/d/1IsX-vLVmgYvNJjI9KTBSmDb_F8yDztHliSWDzvHl_ps/edit
Second part of the visit was used as a working day for HUBzero to implement interaction with PresQT


TILA-571 | Application event aggregate data

Similarly like the application aggregate data.
The event aggregate data creation is called at the end of the application aggregated data creation.

It's run in its own thread to avoid API response latency (same could be done to application aggregate data as well)
The above is not that nice solution since the operation can be only be monitored through logging - not that bad, but we might want some manageable background operation solution (celery, django-rq, django-cron etc.)

Deployment notes

Need to run the event.create_aggregate_data() creation for every event of application which has IN_REVIEW status or higher

hmph, some test failures when running all together => have to get rid of dependencies with each other since they pass when running single.

hmph, some test failures when running all together => have to get rid of dependencies with each other since they pass when running single.

This is done so its ok to review.


DOC: Add license file.

Add the LICENSE license file, in conformance to the license notice in
the header of the source files.

@glennpierce @ntustison as original authors of this module, could you please review and approve this pull request?


Configure airbnb eslint in the project

Is your feature request related to a problem? Please describe.

ESLint is a static code analysis tool for identifying problematic patterns found in JavaScript code. Eslint is a must-have in every project.

Describe the solution you'd like

Configure eslint in the project
Use airbnb styleguide

I would like to work on this

Sure! Could you please add it to both projects?
Let's come up with two PRs.

Sure! Could you please add it to both projects?
Let's come up with two PRs.
sure


Scroll Restoration component not working

Describe the bug
I'm trying to use the Scroll Restoration component in my React + Vite app and it's not working.
It appears that the "next" state is always saving null values for scroll x and y.

Your Example Website or App
https://flades-test.vercel.app/
Steps to Reproduce the Bug or Issue

Scroll the page
Click on a link in the nav bar or use a "Leer mas/Read more" button, both cases will redirect you to a new page
In the new page, click the left arrow from your browse to go back to the previous page
Observe that you're in the top of the page

Expected behavior
As a user, I expected the scroll to be saved and to be preserved as I'm coming back to that page.
Screenshots or Videos
No response
Platform

OS: [Windows]
Browser: [Arc, Chrome, Edge]
Version: [126.0.6478.127]

Additional context
No response

@darkv314 I am unable to reproduce this issue you are facing. Make sure you have rendered the <ScrollResoration>
component in the Root component. Also, please make sure you are on the latest version of TanStack Router (npm install @tanstack/react-router@latest).
If you are still facing this issue, please provide a valid minimal reproduction of the issue you are facing. You can get started by forking the Router stackblitz starter.

On the implementation side of things, we only commit or restore from the tsr-scroll-restoration-v2 cache, on a navigation event which is tracked by subscribing to the Router's onBeforeLoad and onResolved events.

I just tried to upgrade the version of tanstack router to the latest and scroll restauration is working just fine in developer mode, however when I get the app in production is not working correctly.
I'm making my tests in this repo: https://github.com/darkv314/flades-test, the ScrollRestoration component is in the __root.tsx file in the src/routes folder.
The production link is: https://flades-test.vercel.app/

@darkv314 A reproduction needs to be a minimal example showing off the issue. Without a minimal reproduction, it is difficult to trace the issue since it gets muddled up with any existing business logic and components.
Here is a minimal version, with it working as expected both in development mode and production: https://stackblitz.com/edit/github-kgxnup?file=src%2Froutes%2Findex.tsx
Please turn this starter into a reproduction that can be used.

After stripping away your reproduction, I think I've managed to pinpoint the issue.

This has been completed as of the 1.44.4 release.


Created Subscribe Options

@jpetso Hey Jakob.  If you are OK with this implementation and merge it, I will update call options to follow this same flow and add the "disclose_me" flag option.

I'm not actually a maintainer, so I can't merge your code. You'll need @oberstet or some Tavendo person to get it merged. I just dealt with the code here and there and thought I'd help out with reviewing a bit.
Apart from that, we should probably adopt a documented coding style for the project (at least for the most used constructs). I think most code in autobahn-cpp right now uses the { brace on the same line as an if, whereas the patch here puts it on a separate line. But without an accepted coding style, it seems inappropriate to ask for subtle changes like that.
Style aside, the change seems fine to me right now. @oberstet will have the last word on it though.

Got ya @jpetso.  Thanks for reviewing.  @oberstet Let me know if you need any changes Tobias.  We are now dabbling in this realm so you can expect to see more PRs coming your way from me :)

Thanks again, Eric!


Feature/log format

This implements what is described in https://github.com/TheTorProject/ooni-backend/issues/96
@anadahz

Coverage increased (+0.7%) to 62.693% when pulling cedfe83a0d7f8ff0cc054f9e5e7751a58bc74569 on feature/log-format into f5b96d47d79f928bb88e1536fca72d0716fadd22 on master.

I am going to proceed with the self merge of this.


kahoot-flood and kahoot-rand seem to be patched.

They both seem to be still broken for me. The actual kahoot protocol has changed so I don't see why it should work.

Back to square one I guess.

Death with in f77408b894361af231ab0cd01ebbf8928aee5351.


pipeline transform

Why are these changes needed?
Initial implementation of pipeline transform
Related issue number (if any).

@daw3rd , I looked over this PR and it is OK for me, but leave it for your final verdict.

Can we run a pipeline outside of the runtime/launcher? If so, I'd like to see a test or other example of how this is done? If not, we need it.

For running a pipeline outside a runtime we have kfp. We can not pass values in memory outside of runtime

Can we run a pipeline outside of the runtime/launcher? If so, I'd like to see a test or other example of how this is done? If not, we need it.

For running a pipeline outside a runtime we have kfp. We can not pass values in memory outside of runtime

This is a problem and does not meet requirements defined in the issue. https://github.com/IBM/data-prep-kit/issues/374#issuecomment-2353447356

Can we run a pipeline outside of the runtime/launcher? If so, I'd like to see a test or other example of how this is done? If not, we need it.

For running a pipeline outside a runtime we have kfp. We can not pass values in memory outside of runtime

This is a problem and does not meet requirements defined in the issue. #374 (comment)

The requirement does not specify the ability to run across runtimes. Besides, where is this requirement coming from?


Move Spawn/AtomicWaker/ArcWake/FutureObj to futures-task

This is the idea I mentioned in https://github.com/rust-lang-nursery/futures-rs/issues/1893#issuecomment-543188933, and address some suggestions of https://github.com/rust-lang-nursery/futures-rs/issues/1893#issuecomment-540757546:
https://github.com/rust-lang-nursery/futures-rs/issues/1893#issuecomment-543188933

Also, I was thinking of adding a new crate as a solution for #1830 (comment).
Personally, I think it might be a good idea to add a crate that provides "items contained in the futures::task module except for *Ext trait".

https://github.com/rust-lang-nursery/futures-rs/issues/1893#issuecomment-540757546

futures-core

Remove Spawn, LocalSpawn, SpawnError, and put them in futures-executor somehow. #1830
Remove FutureObj and LocalFutureObj (they seem only needed for Spawn and friends?).
Remove AtomicWaker. It's only exposed in a doc(hidden) task::__internal module, but it doesn't seem like we need to compile it if only after the core traits.

Closes #1830
r? @cramertj
cc @seanmonstar @Nemo157

This is great! What would you think about moving AtomicWaker back so that we can drop the dependency on futures-task from futures-channel? I think that FutureObj and Spawn are fairly unstable and possibly not long for this world, and it'd be a shame to build in a dependency on them from channels (though maybe it's not a huge deal).
cc @seanmonstar -- do you have thoughts here? Being able to share AtomicWaker seems good, and I think the way it's done currently leaves us lots of room to adapt in the future. I don't see much cost to having it shipped with futures-core as an unstable internal implementation detail.

My personal feeling is that making futures-core as light as possible is a good goal. On one hand, AtomicWaker isn't that much code, but on the other, for example, I have no use for it in many things that rely on futures-core, so it'd seem nice to not need to compile it.

it'd seem nice to not need to compile it.

Makes sense! I'm skeptical that it's introducing significant compile-time cost, and it seems likely that other things in an async project would potentially make use of it (e.g. anything using futures or futures-util). That said, since it isn't part of futures-core's stable API surface it seems fine to revisit in the future. I'd like to make as few commitments now as possible to give futures-rs room to evolve, which makes me concerned about offering AtomicWaker in futures-task or having futures-channel depend on futures-task.

What would you think about moving AtomicWaker back so that we can drop the dependency on futures-task from futures-channel?

I don't have a strong opinion. Also,  by adding a new unstable feature like 'internal', you can compile it only when you need it. However, since stable crates should use futures-task, I don't think the benefits from this are big.

Primarily I want to leave room for dropping the futures-task dependency from futures-channel in the future, which I'm concerned this wouldn't allow since this change would make futures-channel enable features in futures-task.

Fwiw, long term, I plan to move away from using AtomicWaker in the Tokio channel types. I’ve found that there are more efficient, specialized strategies.
I mention this in case you want to avoid including AtomicWaker until you evaluate whether or not the futures types will use it long term.

@carllerche Right, I think the right place to expose it is futures-util, which is where it was before this change, and is the crate that carries the loosest stability requirements.

@cramertj

Primarily I want to leave room for dropping the futures-task dependency from futures-channel in the future, which I'm concerned this wouldn't allow since this change would make futures-channel enable features in futures-task.

In this PR's approach, once we find an alternative to AtomicWaker, futures-channel can remove the dependency on futures-task.
Also, note that when defining AtomicWaker in futures-core, even if futures-channel no longer requires AtomicWaker, AtomicWaker cannot be removed from futures-core because need to maintain compatibility with older versions of futures-channel.

Regarding AtomicWaker and futures-core: Wouldn't ´futures-corebe purelyno-stdcompatible, only based oncore`, and not having any feature flags after those changes? If yes, then it would be great to keep it that way!
I would rather not recommend to expose AtomicWaker publically - purely for avoiding to send out the message that this is the preferred or recommended way to use a Waker API. It's a tool specific for some use-cases, and other use-cases might be better served with assigning Wakers in synchronized blocks (mutexes) that also protected the associated data. If someone wants to go the harder way use atomics in their application they should be fine with having their own copy of this code.

@taiki-e

In this PR's approach, once we find an alternative to AtomicWaker, futures-channel can remove the dependency on futures-task.

I don't believe it can, though, since it enables feature flags in futures-task that wouldn't be present otherwise. If the dep gets dropped, those features will stop being enabled, and users using futures-task directly would see features go away.
I also think that AtomicWaker is not as fundamental as these traits, and is primarily a utility and should only be exposed in futures-util.

@cramertj
I agree with AtomicWaker should only be exposed in -util. so I've reverted dd664a3.

To keep a record, I'm still concerned about what I said in https://github.com/rust-lang-nursery/futures-rs/pull/1925#issuecomment-549116342:

Also, note that when defining AtomicWaker in futures-core, even if futures-channel no longer requires AtomicWaker, AtomicWaker cannot be removed from futures-core because need to maintain compatibility with older versions of futures-channel.

Given the current maintenance state of futures-channel, I don't think there will be any immediate changes, but I think this should be considered in the next minor (or major) version. (The way I said in https://github.com/rust-lang-nursery/futures-rs/pull/1925#issuecomment-548499516, or something else)

Github seems to be having issues, so I've landed this manually.

Thanks so much for the PR <3

By the way, this crate name is reserved by me, so I will hand off to @cramertj.


hub.KerasLayer not compatible with tf.distribute

If I try to create a Keras Model using hub.KerasLayer it works correctly if the model definition is not inside a distribution strategy scope.
If the model definition, instead, is inside the strategy the following exception is raised:
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow_hub/keras_layer.py", line 98, in __init__
    self._func = module_v2.load(handle)
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow_hub/module_v2.py", line 80, in load
    return tf_v1.saved_model.load_v2(module_handle)
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/saved_model/load.py", line 324, in load
    export_dir)
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/saved_model/load.py", line 63, in __init__
    self._setup_functions_captures()
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/saved_model/load.py", line 100, in _setup_functions_captures
    for node_id in proto.bound_inputs]
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/saved_model/load.py", line 100, in <listcomp>
    for node_id in proto.bound_inputs]
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/saved_model/load.py", line 117, in _get_tensor_from_node
    return obj.handle
  File "/data/pgaleone/env/lib/python3.6/site-packages/tensorflow/python/distribute/values.py", line 317, in __getattr__
    return getattr(self.get(), name)
AttributeError: 'tensorflow.python.framework.ops.EagerTensor' object has no attribute 'handle'

Here's a minimum reproducible example:
import tensorflow as tf
import tensorflow_hub as hub

strategy = tf.distribute.MirroredStrategy()

with strategy.scope():

    model = tf.keras.Sequential(
        [
            hub.KerasLayer(
                "https://tfhub.dev/google/tf2-preview/inception_v3/feature_vector/2",
                output_shape=[2048],
                trainable=True,
            )
        ]
    )

Tensorflow team is working on a fix for this issue. We will update the thread once the fix is available for testing.

Awesome, thank you for the update!

To my knowledge, MirroredStrategy should work with recent versions of all pieces involved. Please try

the TF2 SavedModel at https://tfhub.dev/google/imagenet/inception_v3/feature_vector/4
tensorflow-hub 0.7.0
tensorflow 2.1, or failing that, a recent tf-nightly

For TPUStrategy, you may have to use tf-nightly or the upcoming 2.2rc.

Hello,
Was this corrected for all models in the tensorflow-hub ?
I have :
print("Version: ", tf.__version__)
print("Eager mode: ", tf.executing_eagerly())
print("Hub version: ", hub.__version__)
print("GPU is", "available" if tf.config.experimental.list_physical_devices("GPU") else "NOT AVAILABLE")
strategy = tf.distribute.MirroredStrategy( cross_device_ops=tf.distribute.ReductionToOneDevice())
print('Number of devices: {}'.format(strategy.num_replicas_in_sync))

TF Version:  2.1.0
Eager mode:  True
Hub version:  0.7.0
GPU is available
INFO:tensorflow:Using MirroredStrategy with devices ('/job:localhost/replica:0/task:0/device:GPU:0', '/job:localhost/replica:0/task:0/device:GPU:1')
Number of devices: 2

URL = "https://tfhub.dev/google/tf2-preview/mobilenet_v2/feature_vector/2"

with strategy.scope():
    model = tf.keras.Sequential([
      hub.KerasLayer(URL, input_shape=(IMAGE_RES, IMAGE_RES, 3),trainable = False ),
      layers.Dense(num_classes, activation='softmax')
    ])

    model.compile(
      optimizer='adam',
      loss='sparse_categorical_crossentropy',
      metrics=['accuracy'])

and I'm still having
...:     model.compile(
      optimizer='adam',
      loss='sparse_categorical_crossentropy',
      metrics=['accuracy'])
Traceback (most recent call last):

  File "<ipython-input-7-67ab2c1e8e47>", line 4, in <module>
    layers.Dense(num_classes, activation='softmax')

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\training\tracking\base.py", line 457, in _method_wrapper
    result = method(self, *args, **kwargs)

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\keras\engine\sequential.py", line 116, in __init__
    self.add(layer)

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\training\tracking\base.py", line 457, in _method_wrapper
    result = method(self, *args, **kwargs)

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\keras\engine\sequential.py", line 203, in add
    output_tensor = layer(self.outputs[0])

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\keras\engine\base_layer.py", line 748, in __call__
    self._maybe_build(inputs)

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\keras\engine\base_layer.py", line 2116, in _maybe_build
    self.build(input_shapes)

  File "C:\Users\jbbis\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow_core\python\keras\layers\core.py", line 1101, in build
    raise ValueError('The last dimension of the inputs to `Dense` '

ValueError: The last dimension of the inputs to `Dense` should be defined. Found `None`.

I'm trying to use TPUStrategy with the Efficientnet-lite models on TFHub, using AI Platform runtime 2.3 (TF 2.3, Python 3.7).
tpu = tf.distribute.cluster_resolver.TPUClusterResolver()
print("Device:", tpu.master())
tf.config.experimental_connect_to_cluster(tpu)
tf.tpu.experimental.initialize_tpu_system(tpu)
strategy = tf.distribute.TPUStrategy(tpu)
print("Number of replicas:", strategy.num_replicas_in_sync)

with strategy.scope() if strategy is not None else contextlib.nullcontext():
    model = tf.keras.Sequential([
        hub.KerasLayer('gs://path/to/efficientnet_lite2_feature-vector_2', trainable=False),
        tf.keras.layers.Dense(num_classes),
        tf.keras.layers.Softmax()
    ])
    model.compile(
        optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),
        loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
        metrics=['accuracy'])

model.fit(...)

This yields the following error:
Traceback (most recent call last):
    File \"/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py\", line 538, in compile
        self._validate_compile(optimizer, metrics, **kwargs)
    File \"/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py\", line 2512, in _validate_compile
        '  model.compile(...)' % (v, strategy))
    ValueError: Variable (<tf.Variable 'efficientnet-lite2/stem/conv2d/kernel:0' shape=(3, 3, 3, 32) dtype=float32, numpy=array([[[[(I removed this to save space)]]]], dtype=float32)>) was not created in the distribution strategy scope of (<tensorflow.python.distribute.tpu_strategy.TPUStrategyV2 object at 0x7fe10028fed0>). It is most likely due to not all layers or the model or optimizer being created outside the distribution strategy scope.

Is there something more I have to do to use the hub.KerasLayer inside a TPUStrategy?
Side note: I believe these models are still in TF1 SavedModel format, because they don't appear when the TF2 filter is applied on the TFHub website. The normal Efficientnet models, however, have been published in TF2 format. I don't know if this is matters or not, but I'm guessing not because I can train without issue if I don't use a distribution strategy.

I'm trying to use TPUStrategy with the Efficientnet-lite models on TFHub, using AI Platform runtime 2.3 (TF 2.3, Python 3.7).
tpu = tf.distribute.cluster_resolver.TPUClusterResolver()
print("Device:", tpu.master())
tf.config.experimental_connect_to_cluster(tpu)
tf.tpu.experimental.initialize_tpu_system(tpu)
strategy = tf.distribute.TPUStrategy(tpu)
print("Number of replicas:", strategy.num_replicas_in_sync)

with strategy.scope() if strategy is not None else contextlib.nullcontext():
    model = tf.keras.Sequential([
        hub.KerasLayer('gs://path/to/efficientnet_lite2_feature-vector_2', trainable=False),
        tf.keras.layers.Dense(num_classes),
        tf.keras.layers.Softmax()
    ])
    model.compile(
        optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),
        loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
        metrics=['accuracy'])

model.fit(...)

This yields the following error:
Traceback (most recent call last):
    File \"/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py\", line 538, in compile
        self._validate_compile(optimizer, metrics, **kwargs)
    File \"/opt/conda/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py\", line 2512, in _validate_compile
        '  model.compile(...)' % (v, strategy))
    ValueError: Variable (<tf.Variable 'efficientnet-lite2/stem/conv2d/kernel:0' shape=(3, 3, 3, 32) dtype=float32, numpy=array([[[[(I removed this to save space)]]]], dtype=float32)>) was not created in the distribution strategy scope of (<tensorflow.python.distribute.tpu_strategy.TPUStrategyV2 object at 0x7fe10028fed0>). It is most likely due to not all layers or the model or optimizer being created outside the distribution strategy scope.

Is there something more I have to do to use the hub.KerasLayer inside a TPUStrategy?
Side note: I believe these models are still in TF1 SavedModel format, because they don't appear when the TF2 filter is applied on the TFHub website. The normal Efficientnet models, however, have been published in TF2 format. I don't know if this is matters or not, but I'm guessing not because I can train without issue if I don't use a distribution strategy.

To my knowledge, the efficientnet lite modules are not SavedModel (https://tfhub.dev/tensorflow/efficientnet/lite4/classification/2). It cannot be loaded as hub.KerasLayer.

To my knowledge, the efficientnet lite modules are not SavedModel (https://tfhub.dev/tensorflow/efficientnet/lite4/classification/2). It cannot be loaded as hub.KerasLayer.

To my knowledge, the efficientnet lite modules are not SavedModel (https://tfhub.dev/tensorflow/efficientnet/lite4/classification/2). It cannot be loaded as hub.KerasLayer.

Right, the classification models are not. However, there are also feature vectors that I can successfully load in for training, it only fails when I use a distribution strategy. https://tfhub.dev/tensorflow/efficientnet/lite1/feature-vector/2

To my knowledge, the efficientnet lite modules are not SavedModel (https://tfhub.dev/tensorflow/efficientnet/lite4/classification/2). It cannot be loaded as hub.KerasLayer.

Right, the classification models are not. However, there are also feature vectors that I can successfully load in for training, it only fails when I use a distribution strategy. https://tfhub.dev/tensorflow/efficientnet/lite1/feature-vector/2

Hi @willbattel, I'm afraid the model format (TF1 Hub Module vs TF2 SavedModel) is the issue here, so a full solution would require EfficientNet Lite to be republished in the TF2 SavedModel format – but I haven't heard of any plans to that effect.
That said, since you're anyways not trying to fine-tune, training can be restricted to the linear classifier on top. Depending on the size of your dataset, maybe a single GPU is enough and a distribution strategy is not needed after all? You could also consider generating training data for the linear classifier in a separate step and train the classifier from that, but I admit that makes it a bit tedious to assemble the final model for export.

Hi @willbattel, I'm afraid the model format (TF1 Hub Module vs TF2 SavedModel) is the issue here, so a full solution would require EfficientNet Lite to be republished in the TF2 SavedModel format – but I haven't heard of any plans to that effect.
That said, since you're anyways not trying to fine-tune, training can be restricted to the linear classifier on top. Depending on the size of your dataset, maybe a single GPU is enough and a distribution strategy is not needed after all? You could also consider generating training data for the linear classifier in a separate step and train the classifier from that, but I admit that makes it a bit tedious to assemble the final model for export.

Closing this, because the original problem has been resolved as explained on Mar 10, 2020, and the remaining issue with efficientnet/lite is an inherent limitation.


"Pull Requests" and "Issues" have been showing "loading..." for hours

VS Code Version: 1.54.2
OS Version: 10.0.19042 Build 19042

Steps to Reproduce:

Install GitHub Pull Requests and Issues in VSCode
Authorize with Github
Go to the Github Section with the tab on the left side
Pull Requests and Issues have been showing "loading..." for hours

Does this issue occur when all extensions are disabled?: No

I have the same issue and see the 2 warnings and 2 errors below in the Developer console:
workbench.desktop.main.js:62 [Extension Host] rejected promise not handled within 1 second: Error: Git model not found
v @ workbench.desktop.main.js:62
workbench.desktop.main.js:62 [Extension Host] stack trace: Error: Git model not found	at a.getAPI (c:\Users\User\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:54:45368)	at new Da (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:18628)	at Function.createProvider (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:19195)	at Dp (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:25145)	at Eg (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1020:23211)	at processTicksAndRejections (internal/process/task_queues.js:97:5)
v @ workbench.desktop.main.js:62
workbench.desktop.main.js:2084 [[object Object]]Git model not found
$onExtensionRuntimeError @ workbench.desktop.main.js:2084
workbench.desktop.main.js:2084 Error: Git model not found
at a.getAPI (c:\Users\User\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:54:45368)
at new Da (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:18628)
at Function.createProvider (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:19195)
at Dp (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1008:25145)
at Eg (c:\Users\User.vscode\extensions\github.vscode-pull-request-github-0.24.0\dist\extension.js:1020:23211)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
$onExtensionRuntimeError @ workbench.desktop.main.js:2084

I have been observing the same problem for 2 days :eyes:

screen

I have the same issue. Logs are mostly the same as for @saitozturk

I just noticed its working in another repo with a different set of extensions activated. After testing this I have verified it has to do with the sonarsource.sonarlint-vscode extension. When the extension is enabled Github Pull Request Extension doesn't load with above error. If I deactivate sonarlint it works without problems.
Is this caused by SonarLint or Github PR? Should I open an issue with SonarLint as well?

Same error to me

UPDATE
Apparently the fetch field in "origin" section in .git/config file was wrongly set. It should look like:
[remote "origin"]
	url = https://github.com/[user]/[project].git
	fetch = +refs/heads/*:refs/remotes/origin/*

Previously I had:
❌❌
[remote "origin"]
	url = https://github.com/[user]/[project].git
	fetch = +refs/heads/master:refs/remotes/origin/master

the fix proposed by @lucasrodes does not work for me unfortunately...
Also disabling other Extensions above seems to have been a race condition... Its now back to not working at all.

Any solutions. I got the same problem. Endless loading......

I might have found the root cause for this. The Extensions depends on the vscode.git extension but it never declares that anywhere. And therefore sometimes fails if the Git extensions is not loaded in time. This also explains my race condition above that removing extension "fixed" it. This changed the startup order enough to have vscode.git ready before the github extension loaded.
Based on the Extension Docs I added following snippet to the package.json of the extension in my local .vscode/extensions folder
{
// ....
	"extensionDependencies": [
		"vscode.git"
	],
// ....
}

This seems to have fixed the issue for me... will keep on testing. Can anybody confirm this?
Also happy to do a PR for this. (shouldn't be too hard adding all of 3 lines 😄 )

It looks like there are two separate issues here:

If Git is not installed, the git extension throws an error when we try to access the API and we don't gracefully handle this
The git extension is not activating at some times

Adding the vscode.git extension as an extension dependency doesn't actually make VS Code try to activate it before this extension, I think we need to make an explicit call to activate

So how do you fix it ?

I fixed this loading issue by removing and re-adding the repo in the vs code. Try to remove the local copy from your system and clone again.

In case this helps anyone else, for me the following fixed this issue.

Quite vscode
rm -rf ~/.vscode/extensions/github.vscode-pull-request-github-*
Start vscode
Reinstall the extension, and reauth to GitHub in browser

Hello, I am suffering from this situation and I do not see any error. How can I debug this?

Hello, I am suffering from this situation and I do not see any error. How can I debug this?

I was having the same issue and after much digging I was able to find the problem. What did you name your remote repo in vscode? Run the following command in the terminal in the same location as the git folder:
git remote -v
You should see the name on the left hand side. If it is not named origin/upstream the extension will not work. Looking at the extension settings, you can see that is what it is looking for:

To fix the issue, you have to add origin
git remote add origin https://github.com/<account>/<repo>
Alternatively, in the extension settings, you can add the name of your remote so that it knows to also look for the remote repo that came up when the above command was sent.

I don't know why @milunova's comment is marked as outdated, but this fixed it for me. I had named my new remote "github" and not "origin", and then this happened without me thinking about it. I just added github to the list of PR: Remotes and it worked straight away.

Is there someone who fixed this problem? pls help me.

Is there someone who fixed this problem? pls help me.

As I mentioned, the below reply worked for me.

Hello, I am suffering from this situation and I do not see any error. How can I debug this?

I was having the same issue and after much digging I was able to find the problem. What did you name your remote repo in vscode? Run the following command in the terminal in the same location as the git folder:
git remote -v
You should see the name on the left hand side. If it is not named origin/upstream the extension will not work. Looking at the extension settings, you can see that is what it is looking for:

To fix the issue, you have to add origin
git remote add origin https://github.com/<account>/<repo>
Alternatively, in the extension settings, you can add the name of your remote so that it knows to also look for the remote repo that came up when the above command was sent.

hy ...I am facing same issue , please help

@abdulmoizniazi did you try looking at the solutions?

I'm having this issue too but none of the solutions have worked. I'm on SSO enterprise

Hello,
I facing same behavior as was described above, the extension is still loading.
I can recommend to type the command below into Terminal of VScode

git remote --v
Then you will see the list of active remotes, for example:

C:\Users\user\MbedCE_Test\build>git remote --v
MyRemote https://github.com/SomeOrg/SomeRepo.git (fetch)
MyRemote https://github.com/SomeOrg/SomeRepo..git (push)
origin  https://github.com/SomeOrg/SomeRepo. (fetch)
origin  https://github.com/SomeOrg/SomeRepo. (push)

If the remote with your URL is not there

then you need to add it manually via

git remote add NAME_OF_REMOTE https://github.com/<account>/<repo>

for example git remote add origin  https://github.com/SomeOrg/SomeRepo
BR, Jan

Hello,
I facing same behavior as was described above, the extension is still loading.
I can recommend to type the command below into Terminal of VScode

git remote --v

Then you will see the list of active remotes, for example:
C:\Users\User\ProjectName\build>git remote --v
MyRemote https://github.com/SomeOrg/SomeRepo.git (fetch)
MyRemote https://github.com/SomeOrg/SomeRepo..git (push)
origin  https://github.com/SomeOrg/SomeRepo. (fetch)
origin  https://github.com/SomeOrg/SomeRepo. (push)

If your repository is not on the list you have to add it via

git remote add NAME_OF_REMOTE https://github.com/<account>/<repo>

for example git remote add origin https://github.com/SomeOrg/SomeRepo
/*************************************************************************************/
If the remote is not there

then you need to add it manually via Add item button
BR, Jan

Thanks for sharing. I did what you mentioned but my remotes were already there and still getting the same errors.
Also not sure if this makes a difference but I have to be on VPN, which I have been connected to access my remotes. Is it possible that can be causing an issue?

@fseminario  I have no Idea sorry.

git remote -v
You should see the name on the left hand side. If it is not named origin/upstream the extension will not work. Looking at the extension settings, you can see that is what it is looking for:

To fix the issue, you have to add origin
git remote add origin https://github.com/<account>/<repo>

Just like @wlgrd, @milunova 's solution helped me, don't know why it's marked outdated.

I reinstalled the extension, and it fixed the issue for me.

if all else failed: i got the same issue with "git failed to load" so i moved to my master branch and did
git fetch upstream
git checkout master
git branch -u upstream/master
pretty sure i have done it before, but once i did it again it worked


idea 2016 cann't show

this plugin can not show  in version  2016.1

Is it giving an error or is it just disabled in the settings? I think something similar happened when the last big update happened... Check the settings->plugins->CodeGlance and in settings->CodeGlance

@Vektah  no errors and tips, just doesn't display

I fund  when I new install and user default config. the plugin can show. but when i use old config, the plugin can't show,  who know  how to setting ?


Add checks for duplicate dependencies in targets

Dependencies can have multiple properties set on them, but having the same type and reference is a collision and could generate unexpected results.

Needs changelog to get into next version

Replaced with https://github.com/yonaskolb/XcodeGen/pull/1234


Add const Border.uniformSide()

Description
Border.all() is a factory constructor and thus not const
constructable. This change adds a const Border.uniformSide()
constructor and makes Border.all() delegate to it. This allows
callers to more likely be able to make their widget tree const
constructable.
Tests
I added the following tests:

A simple test of the new constructor.

Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I signed the [CLA].
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require Flutter developers to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (Please read [Handling breaking changes]). Replace this with a link to the e-mail where you asked for input on this proposed change.
[x] No, this is not a breaking change.

fwiw, normally we'd call this something like fromSide.

fwiw, normally we'd call this something like fromSide.

Since it just landed, I can easily change it - want me to send a follow-on change to rename it?

If you agree that fromSide is clearer and more consistent, sure. :-)

Yep - https://github.com/flutter/flutter/pull/30792


Any idea how to resolve CORS error when fetching RSS feed?

Hello,
When I fetch RSS feed (feedburner) it works fine in via browser but when I do via extension same code gives cross error.
In angular they do this way: http://jsfiddle.net/mahbub/b8Wcz/
How to do same way in react using this boiler plate?

You should add all urls to the manifest like:
"permissions": [
    "*://*.feedburner.com/*"
],


Make StorageService2 implement PayloadStorageService and make existing tests and fakes work together

Goal

Testing

Release Notes

WHAT:
WHY:

#1440
#1439  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @bidetofevil and the rest of your teammates on  Graphite


fix: sort services by name

we currently sort by uuid, so my-nginx-0, my-nginx-2 and my-nginx-1 might get sorted in the wrong order. This sorts by name which is similar to how things were sorted before we went from GUID (service-id-timestamp) to UUID (hex string)
Note, services aren't still sorted by creation time as they never were. That would be a result of #135


Actually format the code

ESLint formats the JavaScript a little bit, but really not a lot and it also doesn't format other files (like the HTML files, what is this formatting?!) Something like Prettier would probably help a lot further here

@mybearworld Should ESLint continue to be used for JS liniting? I am in the process of deciding between using Prettier or Rome.

@mybearworld Should ESLint continue to be used for JS linting? I am in the process of setting up Prettier.

I don't think there's much point to it.

After I merge the newMessageNotifications addon, I will push an update adding Prettier. 👍

@all-contributors please add @mybearworld for bug, ideas

@imadeanaccount1 Any progress on this?

@mybearworld Ok, so I'm not done yet, but here's what I have so far (i decided to keep using ESLint for its linting and more advanced features while using prettier, which has its own benefits). #64

I'm not entirely sure why *.js is in the prettier ignore file? But yeah, it does.


Allow decimals for tax calculator

- Summary
Fixes issue #153 - allow decimals for tax calculator

- Test plan
calculator_test.go

- Description for the changelog
Using float64 instead of uint64 / int64

- A picture of a cute animal (not mandatory but encouraged)

/assign @mraerino

/mraerino could you please help review the PR for me?

Hey Jiefeng Xu, thanks for the contribution. As far as I can see this changes all currency calculations to use floats which is an anti pattern when it comes to money:
Here's a few article on why this should be avoided:
https://husobee.github.io/money/float/2016/09/23/never-use-floats-for-currency.html
https://dzone.com/articles/never-use-float-and-double-for-monetary-calculatio#:~:text=All floating point values that,store it as it is.

Thank you @biilmann. Will read the articles soon.


Code cleanup - complete support for alternative openai_base_url

What this Pull Request (PR) does
use os.getenv instead of "try" and "if" blocks to load environment variables.
squeezed the option to read from files instead of stdin.
Related issues
Please reference any open issues this PR relates to in here.
.#225 still necessary
Screenshots
NA

Looks like quite a few conflicts here. Please get with @xssdoctor and discuss the functionality given how many changes this would make.


Publish new version to crates.io

Please can a new version be published to crates.io, as it bumps the version of parking_lot? Thanks!

Done!


select2 resize problem

If you resize the browser, select2 dont adjust like other inputs
https://almsaeedstudio.com/themes/AdminLTE/pages/forms/advanced.html

This is select2 issue. Please report it at their repository.
https://github.com/select2/select2
Thanks!

Hi,
I would like to comment that you need to put inline style with a percentage into the tag as indicated in select2 examples (https://select2.github.io/examples.html):
<select class="js-example-responsive" style="width: 50%"></select>

I used 100% to fill width of the closest container

.@fmobile Thanks so much, fixed a Bug for me :)!

@masteradhoc  no problem, I'm glad it worked!

Added to AdminLTE master.
Thanks!


Use new crypto service

Adoptions for https://github.com/assemblee-virtuelle/semapps/pull/1247

I will go ahead and do it myself as it is blocking me


fix swagger validation on auth

Signed-off-by: Samuel Dacanay<EMAIL_ADDRESS>
What this PR does / why we need it: There's a swagger validation issue with the authorization swagger.yaml file
Which issue this PR fixes (optional, in fixes #<issue number>)(, fixes #<issue_number, ...) format, will close the issue when PR is merged: fixes #:
Special notes:

@robertp @zhill added the analyzer config fix here as well

@robertp @zhill added the analyzer config fix here as well


Tasks should provide a solution

Hey! Following your guide at https://norasandler.com/2017/11/29/Write-a-Compiler.html, I can't help but get stuck on the first task (creating a simple lex() function); because it talks about creating a lexer using RegEx's, two things which I understand just fine, however it's not made clear the recommended way to go about this. I have done this in the past by looping through each character, appending it to a temporary string until a space, new-line or certain other characters are hit, and checking the string at each step, and I imagine there is a better way to do this using RegEx, but I'm just not seeing it. I have only ever used RegEx's to test if a given string matches the full expression.
A good format to use would be to give the task, then provide an expandable area containing the (or a, or multiple) solution(s) (preferably with code), and instructing the reader to try the task on their own first, and providing a little more insight into how the task should be accomplished.

Mrs. Sandler provides this tutorial for free and puts her time and effort into providing this great educational ressource. So I think it's just a bit too much work to give this functionality. Aditionally you can always just take a look at her code. That should be the same as seeing the solution.
Anyway: I did it by just defining an Array of RegEx for the different Tokens and then loop over this array to check if any Token is matched at the beginning. If this is the case I remove the text from the beginning of the code and append a token to my token list. In some cases (identifier or intLiteral for example) you might have to do some additional stuff. Feel free to look at my code at https://github.com/Clemens-Dautermann/lcc/blob/master/Compiler/Lexer/Lexer.cs.

Mrs. Sandler provides this tutorial for free and puts her time and effort into providing this great educational ressource. So I think it's just a bit too much work to give this functionality. Aditionally you can always just take a look at her code. That should be the same as seeing the solution.
Anyway: I did it by just defining an Array of RegEx for the different Tokens and then loop over this array to check if any Token is matched at the beginning. If this is the case I remove the text from the beginning of the code and append a token to my token list. In some cases (identifier or intLiteral for example) you might have to do some additional stuff. Feel free to look at my code at https://github.com/Clemens-Dautermann/lcc/blob/master/Compiler/Lexer/Lexer.cs.


ISSUES FOR THE PROTOYPE

Please, leave your comments regarding the prototype here. You can also fill in the prototype testing survey which was designed for the prototype.

Instructions for the prototype testing can be found here: https://restforchrome.blogspot.com/2016/09/prototype-testing-invitation-to.html


Support tvOS and watchOS

This should close #241 when it is finalized. The carthage targets should work but I am seeing errors when I run pod lib lint. Not sure what to do about it. The error is as follows:
 -> Moya (4.3.1)
    - ERROR | [Moya/ReactiveCocoa] xcodebuild: Returned an unsuccessful exit code. You can use `--verbose` for more information.
    - NOTE  | [Moya/ReactiveCocoa] xcodebuild:  <module-includes>:2:9: note: in file included from <module-includes>:2:
    - ERROR | [Moya/ReactiveCocoa] xcodebuild:  /var/folders/z3/llmwqlln7pz907z5596pjct80000gp/T/CocoaPods/Lint/build/Release-watchsimulator/ReactiveCocoa.framework/Headers/ReactiveCocoa-Swift.h:94:9: error: 'ReactiveCocoa/ReactiveCocoa.h' file not found
    - NOTE  | [Moya/ReactiveCocoa] xcodebuild:  <unknown>:0: error: could not build Objective-C module 'ReactiveCocoa'
    - ERROR | [Moya/ReactiveCocoa] xcodebuild:  /var/folders/z3/llmwqlln7pz907z5596pjct80000gp/T/CocoaPods/Lint/build/Release-appletvsimulator/ReactiveCocoa.framework/Headers/ReactiveCocoa-Swift.h:94:9: error: 'ReactiveCocoa/ReactiveCocoa.h' file not found

[!] Moya did not pass validation, due to 3 errors.
You can use the `--no-clean` option to inspect any issue.

Besides that it should be ready to go.

Adds tvOS and watchOS support
Fixes carthage OS X target not having source files
Makes base OS X target 10.9 instead of 10.10

Looks :100: I have an idea about the lint failures – will let you know.

Hmm. No dice here. Looks like it's problems with RAC on the watch/tv platforms. I'll try to look into it shortly.

Getting the same errors. Makes me think it's a problem I made with the podspec. I'll take a look at it tomorrow with @orta and see if we can get this merged.

Sure thing, hit me up when you get in to the office

Alright, so it looks like the watch isn't getting ReactiveCocoa/ReactiveCocoa.h - it's likely from this subspec not providing a watch/tvos reference to the source files.
I did something like this for Artsy Authentication.

I've pushed up an updated podpsec to trunk that should deal with the problems: https://raw.githubusercontent.com/CocoaPods/Specs/92a7990f1f521367d3c4a1274d3ca37564973054/Specs/ReactiveCocoa/4.0.3-alpha-3/ReactiveCocoa.podspec.json

Validating now.

:+1:

Pushing up an update now.

Alrighty! Moya now supports iOS, OS X, watchOS, and tvOS: https://raw.githubusercontent.com/CocoaPods/Specs/2589039691ec831ba080994a5f4387306260da22/Specs/Moya/4.4.0/Moya.podspec.json
Thanks for all the hard work @petester42!


events need to specify which graph they belong to

Multi-Graph pages cannot easily identify which event corresponds with which graph without digging through the cy object.

Hey. Do you have any update on this?
Thx for all the work.

Unfortunately not.  I've been a bit preoccupied as of late.  I imagine I'll address this issue when I move the library to webpack.   I was hoping to get started with it here in the next week or so.  Sorry.

I believe this can be accomplished by returning the graph ID with each event.  Something like...
 _this.$rootScope.$broadcast('cy:edge:' + evt.type, evt, id);

While this would accomplish some level of control, what I am actually trying to do is bind specific events to specific charts.
I have a different controller for each graph in the same page. I want the controller to attach the events to the specific chart it controls. What actually happens is that all events that are set in each controller, run together as soon as the event occurs. Hence a 'cy:edge:tap' event that does x in chart xx, is executed with a 'cy:edge:tap' event that does y in chart yy.
You could argue I could put the events in one place and check the id and execute a different line of code, but I would like to bind the event separately in each charts controller.
Let me know if I am making sense. Thanks.

From the angular side of things, I think I would have to broadcast the id.  'cy:edge:tap:graphid'.  Your controller would have to listen for that specific id:
$scope.$on("cy:node:click:graphid,...
In the interim, you could always bind directly to the event from the graph instance.
cytoData.getGraph('graphid').then(function(graph){
    graph.on('node', 'click', function(evt){
      /// do stuff
    })
})

When I try to bind the event from the graph instance as you suggested I get The selector click is invalid

Worked like a charm with:
graph.on('tap', 'node', function(evt) { // do stuff }
Cheers!

Glad to hear it.


[Type-definitions] Hack around the broken SVGGraphics import map (issue 16705)

Previous attempts at "importing" the @typedef caused the JSDoc-generation to fail, however it seems that prepending it with @ignore causes JSDoc to completely skip the rest of the line while TypeScript will (seemingly) parse the @typedef as usual.
While both gulp jsdoc and gulp typestest pass with this patch, it's unfortunately nothing more than a crude work-around for the actual issue.
This way of "fixing" issue #16705 does feel very undesirable, for a number of reasons:

It does nothing to address the underlying issue, i.e. that the Type-generation doesn't understand the import maps, which means that the same problem could resurface somewhere else in the code-base next week/month.
It feels very arbitrary/brittle, since a future update of JSDoc and/or TypeScript could very easily break this hack.
It further increases the maintenance burden for the Type-generation, when the opposite would be desirable here. (Since it's already very difficult to get TypeScript users to actively help with maintaining this code.)

/botio preview

In issue #16705 only a single TypeScript user has, so far, actually attempted to help debug/fix this problem.
Hence this unfortunately once again highlights the problem with the type-definitions, which is that many (or most) TypeScript users seem unable (or unwilling) to actively help maintain the types.
This is something that I was concerned about back when the type-generation originally landed, and experience has unfortunately shown that unpaid PDF.js contributors (such as myself) has been "forced" to spend quite a lot of time/effort on maintaining the type-definitions. (Given that the primary development target for the PDF.js library is the built-in Firefox PDF Viewer, keeping the library "working" in other browsers/environments takes much more time/effort than many users probably realize.)
With this in mind, if you're using the PDF.js library in a commercial setting and depend on working type-definitions, please consider https://github.com/sponsors/Snuffleupagus/


Failed to find schema aksVersions when setting up AKS cluster

Rancher versions:
rancher/rancher:master 6/29
Steps to Reproduce:
Create an AKS cluster.
After filling in the required fields, click on "Authenticate and configure nodes"
Results:
An error is displayed failed to find schema aksVersions
{"actionLinks":{},"baseType":"error","code":"NotFound","links":{},"message":"failed to find schema aksVersions","status":404,"type":"error"}

rancher/rancher:master 6/29
This has been resolved. I am able to proceed to configure the cluster.


Matrial 2 theming issues

Please see the attached image of email inputfield. If you don't provide correct email address "x" should be in center with error message the bottom of textfield.
Here is the theme info from angular-cli.json file.
       "../node_modules/bootstrap/dist/css/bootstrap.css",         "../node_modules/font-awesome/css/font-awesome.min.css",         "../node_modules/amexio-ng-extensions/themes/material/MAT-amber.css"

Thank you

Will check it and get back to you.

this issue is fixed available  in v3.0.1


Hand edit data - mask

Would like to implement hand editing data in Solo-like fashion. The functionality desired is to uses the polygon selected by SelectRegion instance and apply mask to that region if desired.

A first pass is available in this branch. The functionality seems to be working however the Vgatefilter variable is not shared properly at present.

First, I'm not at all familiar with solo, so I don't really know what that means. But I got the idea from the commit
Ok, we real should start communicating more before doing thing. I already had some developments in this sense, but I was not sure if we would want to use it. Note that is not recommended to use privat pyart methods (i.e. GateFilter._merge), that is why I have this alterations in pyart, that we should first try to PR.
As you already done your version, I invite you to see mine, may be I give you some ideas. I'll add my traditional code comments in the commit, take care to not get lost with the multiple discussions

Yes I agree. I should have posted this issue before embarking on the code. This was spur of the moment last week at night during the conference. This was the specifically asked for by at least 4 different people. I'll look at your comments and code. Did you submit the changes in PyART?

No, I never get to submit to PyART.

Really, 4 people asked for that? I found the ability of erasing everything out of a region some what unnecessary, I could just ignore it.

It is a highly used function in parts of radar meteorology for cleaning up data that just doesn't respond to QC filters.

Making some of the changes you suggest and I'll push them over for further review.

Open PR for pyart: https://github.com/ARM-DOE/pyart/pull/377

Can this be closed now or should we keep it open to remind ourselves of the minor change to make in the code?

let it open.

I think this has also been addressed and can be closed now?

ok, lets close


feat: support Gatsby 4.x

BREAKING CHANGE: Requires<EMAIL_ADDRESS>BREAKING CHANGE: Requires<EMAIL_ADDRESS>

Codecov Report

Merging #51 (1586a87) into master (9be9340) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #51   +/-   ##
=======================================
  Coverage   14.70%   14.70%
=======================================
  Files           2        2
  Lines          34       34
  Branches       14       14
=======================================
  Hits            5        5
  Misses         19       19
  Partials       10       10

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 9be9340...1586a87. Read the comment docs.

Thanks a lot! Makes sense 🙂


Carbon Exception 5.6.10

Laravel Version: 5.6.10
PHP Version: 7.2
Database Driver & Version: MySQL 5.7

Description:
Seems the latest update to 5.6.10 and Carbon 1.24.1 might have a bug got this after running a composer update whilst doing some package development:

Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 0 installs, 2 updates, 0 removals
  - Updating nesbot/carbon (1.23.0 => 1.24.1): Downloading (100%)
  - Updating laravel/framework (v5.6.9 => v5.6.10): Downloading (100%)
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover

   ErrorException  : Declaration of Illuminate\Support\Carbon::__set_state(array $array) should be compatible with Carbon\Carbon::__set_state($state)

If i lock to 5.6.9 the issue goes away.
Steps To Reproduce:
composer update

This is being handled.
https://github.com/laravel/framework/commit/67d8a4b15ffdeeacc2c27efad05735a59dba1c44
https://github.com/laravel/framework/pull/23464

Exactly same issue here with same enviorment.

Thanks guys, just seen the PR.
https://github.com/laravel/framework/pull/23464

https://github.com/briannesbitt/Carbon/commit/ef12cbd8ba5ce624f0a6a95e0850c4cc13e71e41

Some solution?
I have the same problem.

Getting the same error

For a momentary solution, you can rollback to Laravel 5.6.9 and it works.

same for LTS 5.5.37 ...

Getting the same error with exactly the same environment. Though, setting to 5.6.9 seems to have done the trick.

just rolled back from 5.5.37 to 5.5.36

Yup, had to do the same, rolled back to 5.5.36 just like @them-roc said.

Fixed in 5.5.39 and 5.6.11.


Resolve node security advisory for acorn

The following node security advisory requires acorn 6.4.1+ or 7.1.1+ - https://nodesecurity.io/advisories/1488
Is that a feasible change to make for this project?  Upstream dependencies are failing an npm audit check.
Revving nodent-compiler version in nodent package would also be great.

Bumped to acorn v5.7.4, which allegedly fixes the same issue. Sadly acorn v6+ is incompatible with nodent as the plugin API has changed.


Add hot wallet

Temporarily fixed by enabling only the cli feature instead of the all one. I'm now encountering the following error though:
error[E0432]: unresolved import `bpstd::XpubSpec`
  --> rgb/src/descriptor.rs:33:48
   |
33 |     TapTree, Terminal, XOnlyPk, XpubDerivable, XpubSpec,
   |                                                ^^^^^^^^ no `XpubSpec` in the root

warning: impl trait in impl method signature does not match trait method signature
   --> rgb/src/descriptor.rs:195:38
    |
195 |     fn xpubs(&self) -> impl Iterator<Item = &XpubSpec> { iter::once(self.internal_key.xpub_spec()) }
    |                                      ^^^^^^^^^^^^^^^^ this bound is stronger than that defined on the trait
    |
    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
    = note: `#[warn(refining_impl_trait_reachable)]` on by default
help: replace the return type so that it matches the trait
    |
195 |     fn xpubs(&self) -> impl Iterator<Item = &XpubAccount> { iter::once(self.internal_key.xpub_spec()) }
    |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

warning: impl trait in impl method signature does not match trait method signature
   --> rgb/src/descriptor.rs:299:38
    |
299 |     fn xpubs(&self) -> impl Iterator<Item = &XpubSpec> {
    |                                      ^^^^^^^^^^^^^^^^ this bound is stronger than that defined on the trait
    |
    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
help: replace the return type so that it matches the trait
    |
299 |     fn xpubs(&self) -> impl Iterator<Item = &XpubAccount> {
    |                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

For more information about this error, try `rustc --explain E0432`.
warning: `rgb-runtime` (lib) generated 2 warnings
error: could not compile `rgb-runtime` (lib) due to 1 previous error; 2 warnings emitted

P.S. All repos are on master except for bp-wallet, bp-std and bp-core that are on the signer branch

@dr-orlovsky
After fixing rgb-runtime I've managed to try this PR (and the related ones).
Signing of the PSBT seems to work fine but then when trying to deserialize the psbt as so:
let _sig_count = psbt.sign(&signer).unwrap();
let serialized = psbt.serialize(psbt.version);
let tx = bp::Tx::consensus_deserialize(serialized).unwrap();

I receive a panic:
panicked at library/alloc/src/raw_vec.rs:25:5: capacity overflow
Moreover, a couple of questions:

could you explain why it's called TestSigner and not just Signer? Could you rename this?
could you please remove the lifetime from the TestSigner? It doesn't seem necessary and it complicates its usage a lot.

P.S. I know privately I told you that we needed only taprot signing support but I was wrong, we also need wpkh signing support, sorry.

I have rebased the branch on top of master which now contains fixes to the build issues. I have also added commit fixing clap attribute problem you have reported.

Could you explain why it's called TestSigner and not just Signer

Since this signer signs only keys for testnet (and panics on mainnet keys). Maybe TestnetSigner would be a better name, but it is clearly not just a universal Signer. There is another signer, named ConsoleSigner, which can be found in src/hot/signer.rs, which signs mainnet, but (1) I do not think you need one for the tests and (2) it asks user to confirm the receivers, fees etc, since without this the signer is unsafe.

could you please remove the lifetime from the TestSigner?

No, I can't. It takes Xprivs by reference, since Xprivs are not Copy/Clone for the security reasons.
But you can always write your own whatever custom signer, named Signer and taking Xprivs with ownership: just copy file signers.rs from bp-std crate and remove references there. However you will have just a single-use Xpriv keys which can't be used with any other signer. So it would be something like OwningTestnetSigner (similar difference as between str and String, or Path and PathBuf).

I know privately I told you that we needed only taprot signing support but I was wrong, we also need wpkh signing support, sorry.

Good news: Segwit and legacy sighash business logic it's already there (and this is the hardest part of signing). Just need to do one more function in PSBT to support it - will do in the next few days. I am also working on getting the test environment where I can get actual signing happening, so I will be able to debug the panic you have reported.

PS. I have updated bp-std and renamed TestSigner into RefTestnetSigner. I also added TestnetSigner which takes ownership over private keys and doesn't use lifetimes.

Great, thanks! I've opened https://github.com/RGB-WG/rgb/pull/217 to fix the build issues on rgb-runtime and pushed a signer branch on the integration tests where you can run cargo test --test transfers transfer_loop::case_04 to see the panic (remember to first update the git submodules with git submodule update).


Fix --net none test closes #16356

The test TestRunContainerWithBridgeNone assume the host always
has a eth0, but sometimes maybe not, so check if it has a eth0
in container is risky at --net=host. Check if the output of ip l
on host and in container are the same at --net=host is much
more reasonable.
ping @jfrazelle
Signed-off-by: Lei Jitang<EMAIL_ADDRESS>

LGTM

thanks!

there were a few more failures of tests that can be skipped when networkinng is disabled:

@jfrazelle   updated, add test require for those which need networking.

@jfrazelle  update, thx

Thanks LGTM

LGTM


All the Service Specific Roles && RoleBindings have been moved to the…

…ir respective Service directories. Cluster Scoped Cluster Role and Cluster Role Bindings are still available in components/authentication/base and move sandbox-sre-admin RBAC to sandbox component

/test all

So not merge, work in progress

/test all

/test appstudio-hac-e2e-tests

/test appstudio-e2e-tests

/hold


Grindstones "ignored-enchants:" automatically repopulated if left blank in Purpur.yml

Timings link
https://timings.aikar.co/?id=ee20d037186d488f83b01ba0abf1dde6
Expected behavior
When removing all entries from "ignored-enchants:" in purpur.yml expected behaviour is to be able to use grindstone to remove all enchantments and curses from items added to grindstone.
Observed/Actual behavior
Curses remaining on items put into grindstone. Purpur.yml file changed automagically to include both curses again.
Steps/models to reproduce
Edit purpur.yml file at "ignored-enchants:" and remove both curse enchantments leaving the entry blank.
Save file and restart the server and both will be re-populated when purpur.yml is reloaded.
This is not the case when removing just one of the values, or removing both and placing a dummy enchantment such as "- minecraft:null" in the field instead.
Purpur version
Current: git-Purpur-1597 (MC: 1.18.2)*
Previous: git-Purpur-1596 (MC: 1.18.2)

You are running the latest version

Agreements

[X] I am running the latest version of Purpur available from https://purpurmc.org/downloads.
[X] I have searched for and ensured there isn't already an open issue regarding this.
[X] My version of Minecraft is supported by Purpur.

Other
No response

Instead of making it blank, try making the line say ignored-enchants: []. That makes it an empty list.

Instead of making it blank, try making the line say ignored-enchants: []. That makes it an empty list.

This works thanks, was a brain fart on my end for not trying this originally.


Flexible Configuration - editing advice

Hello there,
Just started using KrakenD and it's amasing, quite easy to setup and run.
Now, I'm preparing a configuration for a gateway that will potentially have some hundreds of endpoints. My configuration uses Keycloak for some, requests (probably for all, but it's not already defined at this stage). So, I need to place the same auth/validator (except for the roles) in all the endpoints, something like this:
[...]
      "extra_config": {
        "auth/validator": {
          "alg": "RS256",
          "disable_jwk_security": true,
          "jwk_url": "http://keycloak:8080/realms/myRealm/protocol/openid-connect/certs",
          "roles_key_is_nested": true,
          "roles_key": "realm_access.roles",
          "roles": [
            "admin"
          ]
        }
      },
[...]

This results in a lot of boilerplate code and also if (for example) the keycloak host ever change, I need to manually make a change in each endpoint. -> not very ideal!
So i discovered the amazing world of the flexible configuration, I followed this tutorial on the krakend website, thus creating a krakend.tmpl and an auth.tmpl. Resulting in somethings like this:
krakend.tmpl
[...]
      "extra_config": {
        "auth/validator": {
          {{template "auth.tmpl" .keycloak }},
          "roles": ["org-admin"]
        }
      },
[...]

and the auth.tmpl (which get a keycloak.json setting file containing all the parameters):
[...]
  "alg": "{{ .alg }}",
  "disable_jwk_security": true,
  "jwk_url": "{{ .jwk_url }}",
  "roles_key_is_nested": {{ .roles_key_is_nested }},
  "roles_key": "{{ .roles_key }}",
[...]

So here everythong is actually working! yay!... But then I noticed that I did not get any support from my IDE... no folding, no color, no formatting... no schema check... nothing...
Thus thinking of maintaining a configuration file with 100+ endpoints, it becomes a task quite messy, prone to errors and generally it is easier to waste time.
That being said, I'm here seeking advice on how you guys manage this """issue""", do you simply deal with it? or there is a smart trick of some sort? As IDE of choice we use Intellij Idea, but I'm open to other solutions as well :)
EDIT: I saw that Visual Studio code allows the folding :)

Hi @nikobonomi, there are several ways to get over this "issue", here there are a few ideas:

You can make your IDE of choice to do a krakend check in the background after every save, and save the result of the FC_OUT in a local file (e.g: krakend.json). Check this file in a new tab.
You can use KrakenD hot reload Docker image and the image will generate the final krakend.json after every save by itself. You can have the final krakend.json file opened in a tab in your editor and check how it is doing after each reload.
You can use partial validation on external JSON templates if you want to validate a small object. E.g. notice the $schema:

{
    "$schema": "https://www.krakend.io/schema/auth/validator.json",
    "alg": "RS256",
    "disable_jwk_security": true,
    "jwk_url": "http://keycloak:8080/realms/myRealm/protocol/openid-connect/certs",
    "roles_key_is_nested": true,
    "roles_key": "realm_access.roles",
    "roles": [
      "admin"
    ]
}

Hello there @alombarte, thanks you for giving some options. Sure I will try them soon!
Thanks!


Add standard browsers to CI tests

Looks reasonable to me.

Note: unsurprisingly the tests fail in all IE version for one reason or another. For now, only enabling FF+Chrome.


global variable string change

hanged global variable executor_plugin_name -> EXECUTOR_PLUGIN_NAME in executors to conform with PEP8

 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.


Provide yarn build:poll for WSL2

In container development using WSL2, webpack-dev-server cannot detect file changes on Windows (source code).
https://github.com/microsoft/WSL/issues/4739
This PR provides yarn build:poll for Windows developers using Docker + VSCode Remote Conainers + WSL2.

@tats-u Thank you!


Add partitioned reads to JDBC SchemaIO

Continuing work of #25240 by @byronellis
Tested the change locally.
Found that the original xlang schema has a problem that the Beam primitive type INT16 is not yet supported in Python SDK (!). So added support here.
Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Python 3.10 PostCommit

Run Python_PVR_Flink PreCommit

Run Python_PVR_Flink PreCommit

Run Java_JDBC_IO_Direct PreCommit

Run Python 3.10 PostCommit

integration test passed though postcommit has irrelevant test failing: https://ci-beam.apache.org/job/beam_PostCommit_Python310_PR/lastCompletedBuild/testReport/apache_beam.io.external.xlang_jdbcio_it_test/CrossLanguageJdbcIOTest/. ready for review now

R: @ahmedabu98
CC: @byronellis

Run Python_PVR_Flink PreCommit


Error on displaying people display page for people without records

If I add a person by importing work records regarding him or her and later remove those work records, the person detail page cannot be opened.
Since Budgeteer does not allow for the manual creation and removal of a person can only be done from the details page, which is unreachable, there is unfortunately not workaround for this bug.
See attached stacktrace.

The issue has been fixed by PR #348 which has been merged.
Therefore I close this issue.


redirect clang

See demo links for the fix:
Right now, the following (older) link 404s:
https://vhvb1989.github.io/azure-sdk/clang_introduction.html
The new link we want to redirect to is:
https://vhvb1989.github.io/azure-sdk/clang_design.html

Nice!


Slime sprite seems to be packing

At least in the character preview

Am I mistaken or is this the same issue as #4600?

nah this is probably slime specific


#240 - Make reducers pure by passing date as an argument.

Reducer is now pure because the Date is passed as an argument.
This change makes testing the ActionCreators more difficult as the date needs to be mocked, so the date is being mocked using mockdate. I've tried to mock using babel-plugin-rewire but ran into issues regarding named exports which seem to be related to this issue.

Coverage increased (+0.04%) to 95.0% when pulling ecb3d2d7a46c2daea2563d91107a0765691d42ca on samit4me:240-pure-reducers into 825303b669e7adac7a0a59b4e5155a040090d0d6 on coryhouse:master.

Thanks for the PR @samit4me ! Great work! 👍

Wow that was quick, thanks.

@samit4me Congrats on the PR! 👍


Content for Resources section

This issue will track content for the Resources section.
Gdoc:
https://docs.google.com/document/d/1s3XCZTHvo157msE0oGw3hpgrMiwh7A9V0KkTt-hiMxI/edit

This is now up at https://googlefonts.github.io/typography/variable-font-resources/ :)
I wonder about adding the publication date (yyyy-mm, or even yyyy) to the tiles. @irink?

I for one would love to see a date stamp added to these. Helps orient readers imho, gives them extra cues as to whether or not they want to read more.

I'd like to suggest https://fontdrop.info/ as an alternative to https://wakamaifondue.com/


Bugme???

Hey @bot-hubaaa,
I'm on vacation until I finish writing this on vacation auto-response app :-)
This comment was automatically generated by Hubaaa's GitHub Vacation Responder app.

Hey @bot-hubaaa,
I'm in Juan Dolio
This comment was automatically generated by Hubaaa's GitHub Vacation Responder app.


[CARBONDATA-3437] Changed implementation of Map datatype

Problem: Insert into map should override the old values in case of new duplicate value, which it was not doing.
Solution: Changed the implementation to work fine in case of duplicate values inside map to show the latest values.
Be sure to do all of the following checklist to help us incorporate
your contribution quickly and easily:

[ ] Any interfaces changed?

[ ] Any backward compatibility impacted?

[ ] Document update required?

[ ] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/3776/

Build Failed  with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/11843/

Build Failed  with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/3569/

Build Failed  with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/11858/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/3584/

Build Failed with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/3790/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/3604/

Build Success with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/11878/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/3812/

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/3615/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/3822/

Build Success with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/11889/

LGTM

LGTM

retest this please

Build Success with Spark 2.1.0, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder2.1/3762/

Build Success with Spark 2.3.2, Please check CI http://<IP_ADDRESS>:8080/job/carbondataprbuilder2.3/12041/

Build Success with Spark 2.2.1, Please check CI http://<IP_ADDRESS>:8080/job/ApacheCarbonPRBuilder1/3977/

LGTM


wording of the then sender adaptor

several minor points of the wording about

Otherwise, the expression execution::then(s, f) is expression-equivalent to:
tag_invoke(execution::then, get_completion_scheduler<set_value_t>(s), s, f), if that expression is valid and its type satisfies execution::sender.
Otherwise, ...

perhaps consider adding that the subexpression s is only evaluated once (since it appears twice in the full expression)
according to the spec, if the result of the tag_invoke doesn't satisfy sender, it should go to "Otherwise" clause (fallbacks). but in the example implementation

template <sender _Sender, __invocable_with_values_from<_Sender> _Fun>
        requires __tag_invocable_with_completion_scheduler<then_t, set_value_t, _Sender, _Fun>
      sender auto operator()(_Sender&& __sndr, _Fun __fun) const

The overload is still selected but errors on the return type not satisfying the sender concept
We need to either fix the implementation to match the spec or modify the spec to match the implementation. I personally in favour of erroring out.

void handling in

When execution::set_value(r, args...) is called, calls invoke(f, args...) and passes the result v to execution::set_value(out_r, v)

I believe this issue is captured somewhere else.

no longer applies


[httpuv] runStaticServer function is not available

I am trying to run the example on the readme, and I got the following error:
httpuv::runStaticServer("site", port=8008)
Error: 'runStaticServer' is not an exported object from 'namespace:httpuv'

It seems that the runStaticServer function does not available on the CRAN (1.6.11) docs or namespace. I tried to install directly from the package Github and got the same error:
packageVersion("httpuv")
[1] ‘<IP_ADDRESS>00’

Thanks!

Thanks Rami, this is tracked in https://github.com/posit-dev/r-shinylive/issue/7 and the docs should be fixed by https://github.com/posit-dev/r-shinylive/pull/6. One thing to check is to make sure you restarted your R session after installing the dev version of httpuv. If you did, then please follow up in the linked issue, thanks!

Thanks @gadenbuie for the prompt response. Yes, the restart does the job with version <IP_ADDRESS>00!


Authentication through Personal Access Token creates organisational coupling

Currently, the only documented way to use this library is to authenticate with a Personal Access Token.
This seems wrong, as:

From what I know about them, Personal Access Tokens are associated to human accounts
This means an application access to an Azure DevOps instance is tightly coupled to the existence of a human person in an organisation, which means applications access will break depending on other life cycles.
Personal Access Token also require an expiration date, meaning applications access will break regularly, forcing some manual (human) extra credentials management on top of, and separate from, the one associated with the parent account.

Is there a plan to support other kinds of authentication scheme with Azure DevOps (Server)?
One could think of an OAuth2 process, for instance, allowing different flows:

H2M, much like what is achieved through PAT, without any extra (token, on top of account), manual, token lifecycle management
M2M which would allow managing applications-specific secrets

Both flow isolate authentication of the application from any other organisational resource, and allow delegation of authorisation and grants lifecycle to a dedicated, potentially automated third-party.

i would like to add that all other azure sdks im aware of are using azure-identity for auth, can this please be updated to do the same?
https://github.com/Azure/azure-sdk-for-python/issues/36643

Yes, We need support for azure identity SDK in Azure DevOps SDK. This is what I am doing currently as workaround, but this doesn't cater for refreshing the access token, and other related use cases.
credential = DefaultAzureCredential()
token = credential.get_token("499b84ac-1321-427f-aa17-267ca6975798/.default")
credential2 = BasicTokenAuthentication({"access_token": token.token})

CC: @nechvatalp

Bumping this, as this approach doesn't handle refreshing the access token or other related use cases. Your assistance in adding support of Azure Identity library in devops python SDK would be greatly appreciated.
Thank you!
CC:  @apudovkin-ms, @jasinshaban, @nechvatalp, @tonybaloney


Add Previews for Feature screens

Adding Previews for the different UI states:

Loading
Onboarding
Content
Empty

Added fake data to the various model classes. Not sure about adding this in production code, but couldn't think of a better approach, and will be removed in release build anyway.

@JolandaVerhoef hmm but the device strings it generates seem to be the same as these constants:
https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:compose/ui/ui-tooling-preview/src/androidMain/kotlin/androidx/compose/ui/tooling/preview/Device.kt;l=55

There's a current bug that doesn't allow you to use constants like Devices.PHONE. Can we merge this and revisit later?

SGTM

why we are not using PreviewParameterProvider?


[zh] improve run-application/run-stateless-application-deployment.md

Hope my modifications can enable a step forward to improvement.
Source: content/zh-cn/docs/tasks/run-application/run-stateless-application-deployment.md
Preview: https://deploy-preview-34512--kubernetes-io-main-staging.netlify.app/zh-cn/docs/tasks/run-application/run-stateless-application-deployment/

/lgtm
/approve


Add a rather* primitive multi-file support, old chap

So my editor decides that "very" is a weasel word, so here we are.

I feel terrible saying this, but, surprisingly, it looks good to me. Are we sure it works, though?

Are we sure it works, though?

I tested a couple of basic multi-file "projects" and it all seemed to work. Not that that's a guarantee though.

Too late now!

Ah, the Amulet way of doing things.


TypeError: color must be int or single-element tuple when processing a grayscale image with LLaVA

When processing a grayscale image with different width and height the following error will occur.
Exception in TokenizerManager:
Traceback (most recent call last):
  File "/home/gcpuser/sglang/python/sglang/srt/managers/tokenizer_manager.py", line 61, in get_pixel_values
    image = expand2square(
  File "/home/gcpuser/sglang/python/sglang/srt/mm_utils.py", line 167, in expand2square
    result = Image.new(pil_img.mode, (width, width), background_color)
  File "/opt/conda/envs/sglang_flashinfer/lib/python3.9/site-packages/PIL/Image.py", line 2941, in new
    return im._new(core.fill(mode, size, color))
TypeError: color must be int or single-element tuple

The error originates here and it fails because PIL won't the background consisting of 3 values to the new image with L mode.
So far I only encountered this for grayscale images, perhaps one way to solve it would be to convert these images to RGB before resizing them?

Added possible fix here - https://github.com/sgl-project/sglang/pull/97

Fixed with #97


run on py311

Codecov Report
Patch has no changes to coverable lines.
:loudspeaker: Thoughts on this report? Let us know!.

gto CI linter steps fail in 3.11 (see https://github.com/iterative/gto/issues/400)

@pmrowla , I have updated from py-template.


Greece: data has duplicate rows

Goodtables detected some duplicate rows in Greece's data:
$ goodtables data/gr.csv
DATASET
=======
{'error-count': 11,
 'preset': 'nested',
 'table-count': 1,
 'time': 0.047,
 'valid': False}

TABLE [1]
=========
{'encoding': 'utf-8',
 'error-count': 11,
 'format': 'csv',
 'headers': ['id',
             'name',
             'abbreviation',
             'other_names',
             'description',
             'classification',
             'parent_id',
             'founding_date',
             'dissolution_date',
             'image',
             'url',
             'jurisdiction_code',
             'email',
             'address',
             'contact',
             'tags',
             'source_url'],
 'row-count': 962,
 'scheme': 'file',
 'source': 'data/gr.csv',
 'time': 0.046,
 'valid': False}
---------
[560,-] [duplicate-row] Row 560 is duplicated to row(s) 553
[571,-] [duplicate-row] Row 571 is duplicated to row(s) 562
[586,-] [duplicate-row] Row 586 is duplicated to row(s) 567
[596,-] [duplicate-row] Row 596 is duplicated to row(s) 562, 571
[599,-] [duplicate-row] Row 599 is duplicated to row(s) 575
[607,-] [duplicate-row] Row 607 is duplicated to row(s) 565
[625,-] [duplicate-row] Row 625 is duplicated to row(s) 575, 599
[632,-] [duplicate-row] Row 632 is duplicated to row(s) 565, 607
[634,-] [duplicate-row] Row 634 is duplicated to row(s) 562, 571, 596
[638,-] [duplicate-row] Row 638 is duplicated to row(s) 575, 599, 625
[715,-] [duplicate-row] Row 715 is duplicated to row(s) 714

@okfngr, or anyone else who can verify this, is it ok to delete the duplicated rows in the data?

@todrobbins, I think it's safe to accept the PR, right?

Thanks for all the recent work, @augusto-herrmann and @rufuspollock! I need to check my GitHub notifications more often...

@augusto-herrmann, are we good to close this issue due to #89?

Sure! I thought I had done so already. It seems that I forgot to for some reason.


The logName is confused here, it's a localName actually.

As the title said.
Signed-off-by: huanzhong zhang<EMAIL_ADDRESS>

I suspect this was named logName, because it's the name used in the log-message. Guess this works as well, so
LGTM

LGTM

LGTM 🐻
Windows build are failing for nothing :sweat_smile: merging :wink:

Thanks for your review :)

Thanks for your review :)


Doesn't work for rails 4.2.6

In my production.rb
require 'silencer/logger'
config.middleware.swap Rails::Rack::Logger, Silencer::Logger, :silence => [%r{^/uploads/*}]

after reload in production.log

ActionController::RoutingError (No route matches [GET] "/uploads/123.jpg")

@floydback what version of the gem were you using? thanks

@stve silencer (0.6.0)

@floydback can I ask that you try the current release candidate 1.0.0.rc3 to see if it works there? I changed a lot from 0.6.0 to 1.x. Thanks

Using Rails <IP_ADDRESS> I found the latest 1.0.0.rc3 worked for me, however, I had move the config to an initializer or else I would get the following error:
...gems/2.3.0/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/middleware/stack.rb:108:in
`assert_index': No such middleware to insert before: Rails::Rack::Logger (RuntimeError)

I only needed this for development. So here is what my config/initializers/silencer.rb looks like:
Rails.application.configure do
  config.middleware.swap Rails::Rack::Logger, Silencer::Logger, silence: [...]
end if Rails.env.development?

Works great! Thanks so much for the gem!

@metaskills I also ran into this, thanks!!
Just in case someone like me also googled that middleware not found error came here.
You can also replace the line
config.assets.quiet = true

in your config with
config.middleware.insert_before Rails::Rack::Logger, Sprockets::Rails::QuietAssets
config.middleware.swap Rails::Rack::Logger, Silencer::Logger, silence: [...]

to make inserting Sprockets::Rails::QuietAssets run before replacing Rails::Rack::Logger

Thanks to @metaskills for identifying the initializer as a workaround. I've modified the documentation to make this the recommended approach. Thanks all!


Clarify license

You have not specified a licence file in this package, MIT is only noted in the composer.json. This may prevent some people from using and supporting it, especially if it is used in a professional context. Could you please provide a license file? When this should be unmodified MIT I can make a PR if you want to

Hello,
Thanks for the reminder.
I opened https://github.com/jolicode/elastically/pull/193


streamWriter conflicts with some func

this is my demo.
func main() {
	xlsx := excelize.NewFile()
	err := xlsx.SetSheetRow("Sheet1", "A1", &[]interface{}{"学号", "姓名", "是否缴费"})
	if err != nil {
		fmt.Println(err.Error())
	}
	data, err := xlsx.GetRows("Sheet1")
	fmt.Println(data)
	streamWriter, err := xlsx.NewStreamWriter("Sheet1")
	cell, _ := excelize.CoordinatesToCellName(1, 2)
	if err := streamWriter.SetRow(cell, []interface{}{"1", "2", "3"}); err != nil {
		fmt.Println(err.Error())
	}
	if err := streamWriter.Flush(); err != nil {
		fmt.Println(err.Error())
	}
	if err := xlsx.SaveAs("Book1.xlsx"); err != nil {
		fmt.Println(err)
	}

	data, err = xlsx.GetRows("Sheet1")
	fmt.Println(data)
}

the result is:

the file is :

Why can't I get data by GetRows after I use the streamWriter, and the data will losed? But when I get empty data by GetRows, there is streamWriter's data in the file. And if I use SetSheetRow to add row after the file that has been saved with streamWriter, the excel file will be broken.
I want know if maybe the "bug" is a feature in fact because it looks like very obvious. I can't get any information in the docs.

Thanks for your issue. You can read cell value by GetRows which value is just written with common API (such as SetSheetRow and SetCellValue). The SetSheetRow is not a streaming API, it will not work in stream mode, in another word, we can not using common API and stream API mixed, also ref: #725

I also can't understand this result. Because in my understanding, when I call Flush, I have written the data to this file. Why is the data lost?
I set data by SetSheetRow. And then I create a streamWriter. I call the Flush. Then I can't get data by GetRows.
Do you mean is that we can't useing common Api and stream Api mixed for any file?

Yes, the data generated by streaming API storage way is different with common API, so it's seems like "missing", but it can be storage in spreadsheet if you save the file.

All right. But I suggest you should write some tips at here. And I think it's a bit counterintuitive. Maybe you can consider merging these two APIs.

Hi @00LT00, thanks for your suggestion. I have clarified for streaming API doesn't work with common API in the documentation.


Prepare next Hops 13.x release

Next release: Monday, November 30th

chore: remove pr_status from bors config (#1427)
chore: use correct status name in bors config (#1433)
Force npm legacy peer dependency handling in create-hops-app (#1432)
Fix babel transpilation target (always transpile new syntax) (#1439)
fix(bootstrap): do not try to resolve ESM packages for presets (#1438)

Bors merge bot cheat sheet
We are using bors-ng to automate merging of our pull requests. The following table provides a summary of commands that are available to reviewers (members of this repository with push access) and delegates (in case of bors delegate+ or bors delegate=[list]).

Syntax
Description

bors merge
Run the test suite and push to master if it passes. Short for "reviewed: looks good."

bors merge-
Cancel an r+, r=, merge, or merge=

bors try
Run the test suite without pushing to master.

bors try-
Cancel a try

bors delegate+
Allow the pull request author to merge their changes.

bors delegate=[list]
Allow the listed users to r+ this pull request's changes.

bors retry
Run the previous command a second time.

This is a short collection of opinionated commands. For a full list of the commands read the bors reference.

FYI: removed #1427 & #1432 here and cherry-picked onto v13.x, because they were needed immediately and they weren't relevant for the release.
Did we already consider those types of commits with regards to the release bot?

bors merge

bors merge

bors merge


fix(docs): fix issue #718 (Aurora DB example)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license.
Resolves issue #718

Please update PR title and description to adhere to conventional commits. The title should be something like fix(docs): fix Aurora DB example

Also make sure that you modify the commit title to adhere to conventional commits.

I also updated the commit message.

You will need to update the commit message when you "Squash and merge" from the GitHub UI...