Add Delegation Builder

We can change the naming, but figured let's do one of these to figure out how we want to manage this pattern going forward. Overall I like where it landed, though I did the boiler-plate-y thing and made the interface extremely OO with some methods on DelegationRequired that implicitly convert to DelegationBuilder without requiring an explicit call to .to_builder().
DelegationRequired {
    subject: Subject::Known(alice),
    issuer: alice,
    audience: bob,
    command: "/".to_string(),

    signer: alice_signer,
    codec: encoding::Preset::DagCbor,
    varsig_header: header::Preset::EdDsa(header::EdDsaHeader {
        codec: encoding::Preset::DagCbor,
    })
}
.with_via(carol)
.with_policy(vec![])
.with_metadata(BTreeMap::from_iter([("foo".into(), 123.into())]))
.try_finalize()

I attempted to automatically build the varsig header from the signer + codec, but that won't work super well once we have more than the simplest of signature types, so I reverted those changes.
This code also uses the more common by-ownership version of builder, which lets you easily chain the calls. I previously has this as a series of &muts, but it was less ergonomic; it can be useful in some cases, but I doubt that we'll need to reuse partially-built delegations as a factory.

I attempted to automatically build the varsig header from the signer + codec, but that won't work super well once we have more than the simplest of signature types, so I reverted those changes.

Good call on not doing it in this PR. IMO I still want to find a solution so it's a little less visual noise eventually.

to_builder -> builder (IMO I liked this kind of naming from tokio & iroh)

I've seen this pattern as Foo::builder() to get a blank FooBuilder. Will it be confusing, or is it used both ways?

And remove all with_ calls

Oh, that's what I had originally: I thought you wanted the with_s from previous discussion. Will revert 👍

Sooo
    pub fn not_before(mut self, not_before: Timestamp) -> DelegationBuilder<DID, V, C> {
        self.not_before = Some(not_before);
        self
    }

Why not just
let d = DelegationRequired {
    subject: Subject::Known(alice),
    issuer: alice,
    audience: bob,
    command: "/".to_string(),

    signer: alice_signer,
    codec: encoding::Preset::DagCbor,
    varsig_header: header::Preset::EdDsa(header::EdDsaHeader {
        codec: encoding::Preset::DagCbor,
    })
};

d.via = Some(carol);
d.policy = vec![];
d.metadata = BTreeMap::from_iter([("foo".into(), 123.into())]);

d.try_finalize()

I've seen this pattern as Foo::builder() to get a blank FooBuilder. Will it be confusing, or is it used both ways?

It would've kinda made sense together with the rename from DelegationRequired to Delegation. So that I'd be Delegation::builder().
Consider my proposal as a "all or nothing" kinda idea. The individual renames don't make sense without the rest.

And remove all with_ calls

Oh, that's what I had originally: I thought you wanted the with_s from previous discussion. Will revert 👍

Yeah - I changed my mind about that. Another .builder() call in between isn't too bad. (And to be clear - now my stance is I don't want with_ implementations twice).

FWIW, this is how I create delegations in fission-server tests right now (not depending on this PR yet):
let ucan = Delegation::try_sign(
    &issuer,
    varsig_header(),
    delegation::PayloadBuilder::default()
        .issuer(issuer_did)
        .audience(audience_did)
        .subject(Some(resource_did))
        .command("/".to_string())
        .build()?,
)?;


add schema_version OptoStim model

OptoStim does not have schema_version, leading to validation errors

Hmm... I think the solution here is to make OptoStim AindModel rather than AindCoreModel. It's possible we want StimulusPresentation to be AindCoreModel? Or do neither of them need version? Thoughts @dyf

Will stimulus information be tracked in its own JSON file? If so, it should be an AindCoreModel.

No, I think this should be a class inherited into ephys/ophys models

closed PR #279


Withdraw extension error handling

Withdraw extension error handling based on lnurl-rfc

To the lnbits team - can we do versioning on APIs, because this pull request has data formats returning with a different format and would break all previous versions

@bitkarrot's comment is true, it might break some API's. @javad94, any particular reason for this PR, except for making the response nicer?

Closing due to no activity.


chore prevent creating stmt failed in cold heat separation regression case

Proposed changes
Issue Number: close #xxx
Previously in cold_heat_separation regression, it just tries to create resources/policies. Sometimes if the former cases failed or BE crashed when doing cases the resources would not be cleared so the next time invoking this regression cases would result in failure.
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Fix a typo

Fix a typo in comments

Can one of the admins verify this patch?

I signed it!

This is not a typo. This doc string contains special characters (e.g., backslashes). So adding r before the doc string is required by our linter.


Adds visual commands: f, F, t, T, p

This adds some of the visual commands I often use in my workflow, namely:

visual 'fc' command to extend selection to next occurrence of
character c, inclusive

visual 'Fc' command to extend selection to previous occurrence of
character c, inclusive

visual 'tc' command to extend selection until next occurrence of
character c, non-inclusive

visual 'Tc' command to extend selection until previous occurrence of
character c, non-inclusive

Gave it a quick spin, thanks!


SyncTeX: indicate when a file is closed

There is no way usinc SyncTeX output to tell when we are done with an input file.
This can be a problem when forwarding a position from the editor: if the position is beyond the last line reported by any SyncTex entry, TeXpresso has no way to tell when it can stop searching, until reaching the end of the whole document.
This is wasteful for large documents, and it can happen a lot when the document is split in multiple files.
A solution would be to add a SyncTeX entry indicating that an input file has been closed.
Alternatively, TeXpresso could record when it receives a "close" request and correlate this with SyncTeX output, but that is much more complicated.

Concretely, the extension to SyncTeX could simply be a new /<input number> record.

Implemented in 01ed9c49b5b0e7ec12bd11a2013625419e10860e.


delete! and empty! don't work

Following the documentation
https://makie.juliaplots.org/stable/makielayout/axis.html#Deleting-plots
delete!(axs[2], scatters[2][2]) and empty!(axs[3]) are throwing method errors on a tagged release .

Ah, I switched projects and it's using an outdated version of the Makie ecosystem


Load from file fixes

some minor fixes for serialize.load_from_file:
removed the data_type kwarg, as it was non-functional and unused
added format_ and update_data_callback to the memcache key for _load_from_file (since they affect the results)

Third commit isn't really a fix, but sort of a feature - basically, I broke out a separate mem-cached read_file func, to avoid unnecessary file reads (ie, if kwargs to load_from_file change).

Hey Paul,
I'm going to incorporate this PR soon (a really interesting bug came up related to file loads). but I noticed something - now that you have two @memcached decorated functions - one calling the other - I think this might actually double the number of memcache entries for the same file, as well as doubling the amount of traffic to and from the memcached server.

@nerdvegas - Yeah, since we have nested @memcached functions, the initial call to _load_from_file does result in two interactions with with the memcached server.  Subsequent calls to _load_from_file, though, should simply hit the cache on the outer call, so traffic isn't doubled... unless, of course, most calls to _load_from_file are cache misses, in which case, the cache isn't doing much anyway.
You're right about efftictively doubling storage, however.  My thinking was that hitting the disk is so expensive that we'd want to avoid repeating it whenever possible - so, ie, if _load_from_file is called twice for the same file, but with different args, we'd want to avoid re-reading from disk.
If you think the extra storage cost is too high, though, I'm not opposed to getting rid of the read_file func.  Hopefully reading the same file with different args doesn't happen too often, and the cache around _load_from_file would protect us from having to do it too often.
Alternatively, we could also remove the caching from _load_from_file, and leave it on read_file.  If the processing cost of the stuff that _load_from_file does isn't too high, that might make sense... not sure how expensive that is, though.

Yeah I'm thinking we should keep it simple. Even though different args -
format, callback - could in theory change the results, in practice I know
all the cases where they are used and the extra overhead doesn't win us
anything.
I would sorely like to have just a memcached read_file() function, however
there is a gotcha. The reason update_data_callback is there at all is to
trim changelogs which for some reason, in some of our packages got
extremely large. If we just had read_file(), these extremely large package
definitions would end up in the cache, blowing away lots of other cache
entries (that's what was actually happening). It's annoying but at the
moment I can't see a way around it.
A
On Thu, Sep 17, 2015 at 5:07 PM, Paul Molodowitch<EMAIL_ADDRESS>wrote:

@nerdvegas https://github.com/nerdvegas - Yeah, since we have nested
@memcached https://github.com/memcached functions, the initial call to
_load_from_file does result in two interactions with with the memcached
server. Subsequent calls to _load_from_file, though, should simply hit the
cache on the outer call, so traffic isn't doubled... unless, of course,
most calls to _load_from_file are cache misses, in which case, the cache
isn't doing much anyway.
You're right about efftictively doubling storage, however. My thinking was
that hitting the disk is so expensive that we'd want to avoid repeating it
whenever possible - so, ie, if _load_from_file is called twice for the same
file, but with different args, we'd want to avoid re-reading from disk.
If you think the extra storage cost is too high, though, I'm not opposed
to getting rid of the read_file func. Hopefully reading the same file with
different args doesn't happen too often, and the cache around
_load_from_file would protect us from having to do it too often.
Alternatively, we could also remove the caching from _load_from_file, and
leave it on read_file. If the processing cost of the stuff that
_load_from_file does isn't too high, that might make sense... not sure how
expensive that is, though.
—
Reply to this email directly or view it on GitHub
https://github.com/nerdvegas/rez/pull/234#issuecomment-141291930.

Hmm - so what you say about a memcached read_file makes sense... so I agree we should ditch the third commit.
But if I read you right, you're also advocating ditching the second commit - with the changes to the memcache key - which I think is dangerous. Even if currently it doesn't buy us anything, it's good protection against bugs in the future.

killed that read_file commit...

Closing this now that master is the target branch - see:
https://github.com/nerdvegas/rez/pull/257


Gem countries 2 is compatible

Require only Countries version 1.x could lead to ugly dependency tree with other gems.
Countries 2.x have same compatible API

👍 would like to see this released. thanks!

@franckverrot could we get this out in a release? :)

Hi there, of course! and I’m so sorry it’s taking so long, I’ll get to it by Monday.
Franck

From: Alyssa Ross<EMAIL_ADDRESS>Sent: Saturday, December 16, 2017 9:17:36 AM
To: franckverrot/activevalidators
Cc: Franck Verrot; Mention
Subject: Re: [franckverrot/activevalidators] Gem countries 2 is compatible (#105)
@franckverrothttps://github.com/franckverrot could we get this out in a release? :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/franckverrot/activevalidators/pull/105#issuecomment-352196903, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAGnUYiPc5vQN4O5Opxj16oTE4JdnBqOks5tA_svgaJpZM4Q9h60.

New release is out, sorry for the wait.


[AnVIL DX] Document user's visibility depending on application registration completion state

See doc.

Completed.


Conditional Output

Hi,
I need to generate an output base on some conditions
for example:
My_deployment: if (server.env_name == "dev") then .airflowredisDeployment(server.deployment.name) else{ },
Problem is in case of else it generate blank yml file.. and which throw error when we deply on cluster using apply.sh.
my requirement if I did not want to generate output file in case of else condition.
Kindly suggest

Split what you are generating to a separate file.
Use a main.jsonnet file to import the separate files and output those via kapitan.
Put the if statement in that main.jsonnet file and basically only output the extra files if that statement is true.

Example of main.jsonnet:
local deployment = import "./deployment.jsonnet";
local configmap = import "./configmap.jsonnet";
local service = import "./service.jsonnet";

{
 my_configmap: configmap,
 my_deployment: deployment,
 [if some_condition then "my_service"]: service,
}


Smart Reminder

Smart Reminder catches your verbal commitment and reminds you about them automatically. No manual scheduling required.
"I will check your report in an hour when I get to laptop".-- will schedule an app push notification "Check the report" in 60 minutes from when it was said.
Smart Reminder will process the commitment if you state what needs to be done and in what timeframe.

smartReminder() and _init functions
optional args for executeGptPrompt(): jsonResponseFormat and llmModelName
cleanPrompt() and cleanResponse() helpers
adjustments to createNotification() to be able to schedule notification

Hey @raymanyyy Looks awesome 👏
Before merging, could you please estimate how many requests would cost per user to execute this in a worst case scenario (24 hours?)
Thanks!

Cost estimation
Worst case scenario: "user talks all the time when they awake" - generating 100 tokens (75 eng words) per 2 minutes (cadence of the reminder run)
Will cost $0.36 per user per day
@josancamon19

Added slider to enable/disable the feature like Coach

During testing got this issue
lutter: Battery level: 16
flutter: Subscribed to characteristic: 19b10001-e8f2-537e-4f6c-d104768a1214
flutter: Creating WAV file...
flutter: WAV file created: /var/mobile/Containers/Data/Application/9073055A-FDB1-42BC-B54D-481574038C6D/Documents/temp.wav
flutter: Response body: [{"end":19.694,"speaker":"SPEAKER_04","start":7.276,"text":" Then we are going to a different one, you know that, right?","is_user":false},{"end":22.178,"speaker":"SPEAKER_02","start":19.694,"text":"It's not on your calendar, it's open towards events.","is_user":false},{"end":23.7,"speaker":"SPEAKER_02","start":22.178,"text":"Remind me in one minute to check the news.","is_user":false}]
flutter: Creating WAV file...
flutter: WAV file created: /var/mobile/Containers/Data/Application/9073055A-FDB1-42BC-B54D-481574038C6D/Documents/temp.wav
flutter: Response body: []
flutter: Creating WAV file...
flutter: WAV file created: /var/mobile/Containers/Data/Application/9073055A-FDB1-42BC-B54D-481574038C6D/Documents/temp.wav
flutter: Response body: []
flutter: Smart Reminder Timer Triggered
flutter: _initiateSmartReminderTimer: Speaker 4: Then we are going to a different one, you know that, right?
flutter:
flutter: Speaker 2: It's not on your calendar, it's open towards events. Remind me in one minute to check the news.
flutter: executeGptPrompt response: {}
flutter: {}
flutter: ══╡ EXCEPTION CAUGHT BY FLUTTER FRAMEWORK ╞═════════════════════════════════════════════════════════
flutter: The following _TypeError was thrown:
flutter: type 'Null' is not a subtype of type 'String'
flutter:
flutter: When the exception was thrown, this was the stack:
flutter: #0      TranscriptWidgetState._initiateSmartReminderTimer.<anonymous closure> (package:friend_private/pages/capture/widgets/transcript.dart:245:16)
flutter: <asynchronous suspension>
flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════

For the json output schema in the prompt let's do this:
class StructuredMemory(BaseModel):
    # title: str = Field(description="A title/name for this conversation", default='')
    # overview: str = Field(description="A brief overview of the conversation", default='')
    # action_items: List[str] = Field(description="A list of action items from the conversation", default=[])
    category: CategoryEnum = Field(description="A category for this memory", default=CategoryEnum.other)
    emoji: str = Field(description="An emoji to represent the memory", default='🧠')

    def __str__(self):
        action_item_str = '\n-'.join(self.action_items)
        return f"{self.title.capitalize()}\nOverview: {self.overview}\n{'Action items:' if len(self.action_items) else ''}\n{'-' if len(self.action_items) else ''}{action_item_str}".strip()

class Output(BaseModel):
    parsed: List[StructuredMemory]

parser = PydanticOutputParser(pydantic_object=Output)
print(parser.get_format_instructions())

Langchain generates a very nice format instructions.
Also @raymanyyy is it possiblle it detects multiple notifications, like an array of them?

Closing for now, thank you so much, but this will be delayed for now as we are trying to remove recurrent request to avoid draining battery and network :(


max and min val validation

Set slider value from input type text box and restrict user to entered value which is less then min and greater max.

If I understand correctly what you want, you should try setting the enforceRange  option to true.

I set enforceRange true but it is not letting user to type value. for example. I have set minValue 10 and maxValue 50 and if you want to type 20 in minValue then it will not allow you to type.
https://jsfiddle.net/954eve2L/34/

Indeed, enforceRange prevent any value that is not in the range so when you have 10 and you remove the 1 to type 2, then the value becomes 0 and so is not in the range anymore.
For such a use case, I would use intermediate variables to store the text input values and update the sliders value only when input are valid.


Only validate shoot resources when changed

How to categorize this PR?

/area quality
/kind regression
What this PR does / why we need it:
This PR fixes an issue when shoots have shoot.spec.resources specified. Earlier, Gardener checked their access permission every time the shoot spec was changed. This unfortunately also involves updates from components like the Gardener-Resource-Manager or Gardener-Scheduler which never have access to resources defined in shoot.spec.resources, so the spec change was denied by the admission plugin.
Special notes for your reviewer:
/cc @rfranzke
I might plan to come up with a more elegant solution as soon as time allows.
Release note:

A bug has been fixed which prevented shoot from being scheduled, hibernated or maintained when they hold references to external resources via `shoot.spec.resources`.

/priority 1


Add JSON-LD Support

Adresses #19
This PR adds JSON-LD support (conforming to schema.org) for the following pages:

/ now includes JSON-LD markup for the general podcast series (according to https://schema.org/CreativeWorkSeries)
/podcast/* now includes JSON-LD markup for the specific podcast episode (according to https://schema.org/PodcastEpisode)
/hall-of-fame/* now includes JSON-LD markup for the specific person (according to https://schema.org/Person)

Given that each of these schemas is rather complex, there certainly are possibilities to include even more detailed information. But this seems like a solid first take.
All pages have been verified via schema.org (see attached screenshots)

PS: While the code is functional, some TypeScript warnings have been thrown that I was not able to resolve. Hints are welcome, especially for this file nuxt-app/helpers/jsonLdGenerator.ts

I have fixed the type issues for nuxt-app/helpers/jsonLdGenerator.ts . Could you please recheck, if schema.org now still validates all pages? I had to make a slight adjustment to the creators & creativeworkseries objects.


django celery rabbitmq issue: “WARNING/MainProcess] Received and deleted unknown message. Wrong destination”

My settings.py
CELERY_ACCEPT_CONTENT = ['json', 'msgpack', 'yaml', 'pickle', 'application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_RESULT_BACKEND = 'djcelery.backends.cache:CacheBackend'

celery.py code
from __future__ import absolute_import
import os
from celery import Celery
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'webapp.settings')
from django.conf import settings
app = Celery('webapp')
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

@app.task(bind=True)
def debug_task(self):
    print('Request: {0!r}'.format(self.request))

tasks.py code
[
from future import absolute_import
from celery.utils.log import get_task_logger
from celery import shared_task
import datetime
logger = get_task_logger(name)
@shared_task
def sample_code():
logger.info("Run time:" + str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M")))
return None](url)
On shell I am importing and running as "sample_code.delay()"
Full error stack:
[2016-02-12 00:28:56,331: WARNING/MainProcess] Received and deleted unknown message. Wrong destination?!?

The full contents of the message body was: body: '\x80\x02}q\x01(U\x07expiresq\x02NU\x03utcq\x03\x88U\x04argsq\x04]q\x05U\x05chordq\x06NU\tcallbacksq\x07NU\x08errbacksq\x08NU\x07tasksetq\tNU\x02idq\nU$f02e662e-4eda-4180-9af4-2c8a1ceb57c4q\x0bU\x07retriesq\x0cK\x00U\x04taskq\rU$app.tasks.sample_codeq\x0eU\ttimelimitq\x0fNN\x86U\x03etaq\x10NU\x06kwargsq\x11}q\x12u.' (232b)
{content_type:u'application/x-python-serialize' content_encoding:u'binary'
  delivery_info:{'consumer_tag': u'None4', 'redelivered': False, 'routing_key': u'celery', 'delivery_tag': 8, 'exchange': u'celery'} headers={}}

is this issue going to be addressed? I have same issue but its not consistent for every message.

what is you versions and settings?

Here is my settings and custom consumer class. I am using celery as consumer only. These messages are sent to rabbitmq broker by different app. It consume every other message and rest fails with Wrong destination error.  For some reason custom consumer do not get these messages. I do not want celerys own task queue consumer to process these messages.
I am using celery 3.1.23, amqp 1.4.9,  kombu 3.0.35 and django 1.6.5
celeryconfig.py
CELERY_DEFAULT_QUEUE = settings.JIRA_CELERY_QUEUE
CELERY_DEFAULT_EXCHANGE = settings.JIRA_CELERY_EXCHANGE
CELERY_DEFAULT_EXCHANGE_TYPE = settings.JIRA_CELERY_EXCHANGE_TYPE
CELERY_DEFAULT_ROUTING_KEY = settings.JIRA_CELERY_ROUTING_KEY
CELERY_ACCEPT_CONTENT = ['text/plain', 'json', 'application/json', 'yaml']
CELERY_IGNORE_RESULT = True
CELERY_RESULT_BACKEND = None
CELERY_CREATE_MISSING_QUEUES = False
CELERYD_DISABLE_AUTO_DECLARE = True

consumer.py
from __future__ import absolute_import
from celery import bootsteps
from django.conf import settings
from kombu import Consumer
from kombu import Queue, Exchange
from tools.logger import Logger
logger = Logger.get('jira.consumer', filename=settings.JIRA_CELERYD_LOG_FILE)

class JiraConsumer(bootsteps.ConsumerStep):
    def get_consumers(self, channel):
        return [Consumer(channel=channel,
                     queues=[Queue(name=settings.JIRA_CELERY_QUEUE,
                                   exchange=Exchange(settings.JIRA_CELERY_EXCHANGE,
                                                     type=settings.JIRA_CELERY_EXCHANGE_TYPE),
                                   routing_key=settings.JIRA_CELERY_ROUTING_KEY)],
                     on_message=self.on_message,
                     auto_declare=False),]

    def on_message(self, message):
        try:
            logger.debug('received headers: %r' % (message.headers,))
            logger.debug('received message: %r' % (message.payload,))
        finally:
            message.ack()

celery.py
from __future__ import absolute_import
import os
from celery import Celery
from jira.consumer import JiraConsumer
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myapp.settings')

app = Celery('jira.celery')
app.config_from_object('jira.celeryconfig')
# add the custom consumer bootstep
app.steps['consumer'].add(JiraConsumer)

celery command
celery worker -A jira.celery --without-heartbeat --without-gossip --without-mingle -l debug

Did you figure this out?

@pawaramol22 How did you fix this ? I am also facing the same issue.

I was able to solve this issue. I figured out following was the error.
My Celery setup :
I have few celery tasks that uses queue "A" and a custom consumer steps that uses queue "B" to consume tasks.
When I was starting celery with command by specifying both queues A and B. I was getting error for alternate messages.
 celery -A app -Q A,B -c 2

When I start celery without second queue it was working fine.
celery -A app -Q A -c 2

Hello from 2021! I also ran into this issue when trying to integrate Celery with custom consumers into an existing Flask app (I know this is a django repo, but the bug was identical to my situation).
For anyone else who comes across this thread, my problem was exactly the same as @pawaramol22's above: after setting up my Celery app and my custom consumer following the docs, I noticed that every other message would raise the Wrong destination error. I tried applying the --without-heartbeat --without-gossip --without-mingle flags to my startup command, but that did not work for me.
What ended up working was something similar to @viveksyngh's comment from above. I wasn't specifying any queue options via -Q in my celery -A .. worker command, but I was using the task_queues option within my Python config:
celery.py
app = Celery()
app.config_from_object(config)

config.py:
..
task_queues = [ .. ]
..

By removing the task_queues option everything started working fine again. I wrote a test script that sent 10k messages to my custom consumer and all of them were consumed without issues.
Hope this helps anyone looking for a solution in the future!

Hello from 2021! I also ran into this issue when trying to integrate Celery with custom consumers into an existing Flask app (I know this is a django repo, but the bug was identical to my situation).
For anyone else who comes across this thread, my problem was exactly the same as @pawaramol22's above: after setting up my Celery app and my custom consumer following the docs, I noticed that every other message would raise the Wrong destination error. I tried applying the --without-heartbeat --without-gossip --without-mingle flags to my startup command, but that did not work for me.
What ended up working was something similar to @viveksyngh's comment from above. I wasn't specifying any queue options via -Q in my celery -A .. worker command, but I was using the task_queues option within my Python config:
celery.py
app = Celery()
app.config_from_object(config)

config.py:
..
task_queues = [ .. ]
..

By removing the task_queues option everything started working fine again. I wrote a test script that sent 10k messages to my custom consumer and all of them were consumed without issues.
Hope this helps anyone looking for a solution in the future!

would you mind sending a PR to improve doc?

I'd love to, but I'm not sure where exactly to send the PR ... should it be in Celery? Or django-celery? Furthermore, I'm not certain what to change in the docs since my "fix" was based on observation -- I have no idea why the bug is happening in the first place and why my fix worked. Making a PR to update docs could potentially mislead future users because we don't know if this is a real bug in Celery, or just undocumented behavior.


Analysis refactor misc

Making various small changes to fix various small bugs. Bugs fixed:

The race condition when creating the analysis
Removing unused code
Fixing the "Erro ..." typo
Not showing the job_step if the job is successful
Showing a loading gif when adding a job

Codecov Report

Merging #2161 into analysis-refactor will decrease coverage by 1.91%.
The diff coverage is 100%.

@@                  Coverage Diff                  @@
##           analysis-refactor    #2161      +/-   ##
=====================================================
- Coverage              93.09%   91.18%   -1.92%
=====================================================
  Files                    109      203      +94
  Lines                  15304    21198    +5894
=====================================================
+ Hits                   14248    19329    +5081
- Misses                  1056     1869     +813

Impacted Files
Coverage Δ

qiita_pet/handlers/api_proxy/__init__.py
100% <ø> (ø)

...ta_pet/handlers/analysis_handlers/base_handlers.py
98.64% <ø> (ø)

qiita_pet/handlers/study_handlers/artifact.py
95% <ø> (ø)

qiita_pet/handlers/study_handlers/__init__.py
100% <ø> (ø)

qiita_pet/handlers/api_proxy/artifact.py
99.17% <100%> (ø)

...iita_pet/handlers/api_proxy/tests/test_artifact.py
98.13% <100%> (ø)

qiita_ware/commands.py
33.96% <0%> (-12.27%)
:arrow_down:

qiita_core/tests/test_configuration_manager.py
98.54% <0%> (-0.73%)
:arrow_down:

qiita_ware/ebi.py
90.84% <0%> (-0.23%)
:arrow_down:

...iita_pet/handlers/api_proxy/tests/test_ontology.py
95.23% <0%> (ø)

... and 93 more

Continue to review full report at Codecov.

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


[Bug]: operator clashes with calico-system namespace

What happened?
I have a deployed namespaced jaeger-operator to standard Kubernetes 1.23 cluster. Cluster networking runs on Calico which was deployed using pretty standard Tigera operator.
Every few minutes Jaeger operator pod crashes with errors pointing to calico-system namespace. My WATCH_NAMESPACE variable is only set to watch one other namespace with my custom application. Nothing points to calico-system.
Full logs and
deployment YAMLs attached. The deployment scripts will deploy Jaeger operator itself into jaeger-operator namespace (I've made changes from observability), and it will also deploy needed role to the custom myapp namespace.
Steps to reproduce

Install Calico using Tigera operator on your Kubernetes cluster.
Install namespaced Jaeger operator.
Watch the logs.

Expected behavior
Jaeger operator should not crash or have anything request a Calico namespace.
Relevant log output
1.668170281347599e+09	INFO	verify deployment	{"namespace": "calico-system"}
W1111 12:38:01.359861       1 reflector.go:424] pkg/mod/k8s.io/client-go@v0.25.3/tools/cache/reflector.go:169: failed to list *v1.Namespace: namespaces is forbidden: User "system:serviceaccount:jaeger-operator:jaeger-operator" cannot list resource "namespaces" in API group "" at the cluster scope
E1111 12:38:01.359912       1 reflector.go:140] pkg/mod/k8s.io/client-go@v0.25.3/tools/cache/reflector.go:169: Failed to watch *v1.Namespace: failed to list *v1.Namespace: namespaces is forbidden: User "system:serviceaccount:jaeger-operator:jaeger-operator" cannot list resource "namespaces" in API group "" at the cluster scope
1.668170291340387e+09	ERROR	failed to get the namespace for the deployment, skipping injection based on namespace annotation	{"namespace": "calico-system", "error": "Timeout: failed waiting for *v1.Namespace Informer to sync"}
github.com/jaegertracing/jaeger-operator/controllers/appsv1.(*deploymentInterceptor).Handle
	/workspace/controllers/appsv1/deployment_webhook.go:84
sigs.k8s.io/controller-runtime/pkg/webhook/admission.(*Webhook).Handle
	/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.13.0/pkg/webhook/admission/webhook.go:169
sigs.k8s.io/controller-runtime/pkg/webhook/admission.(*Webhook).ServeHTTP
	/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.13.0/pkg/webhook/admission/http.go:98
github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerInFlight.func1
	/go/pkg/mod/github.com/prometheus/client_golang@v1.13.1/prometheus/promhttp/instrument_server.go:56
net/http.HandlerFunc.ServeHTTP
	/usr/local/go/src/net/http/server.go:2084
github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerCounter.func1
	/go/pkg/mod/github.com/prometheus/client_golang@v1.13.1/prometheus/promhttp/instrument_server.go:142
net/http.HandlerFunc.ServeHTTP
	/usr/local/go/src/net/http/server.go:2084
github.com/prometheus/client_golang/prometheus/promhttp.InstrumentHandlerDuration.func2
	/go/pkg/mod/github.com/prometheus/client_golang@v1.13.1/prometheus/promhttp/instrument_server.go:104
net/http.HandlerFunc.ServeHTTP
	/usr/local/go/src/net/http/server.go:2084
net/http.(*ServeMux).ServeHTTP
	/usr/local/go/src/net/http/server.go:2462
net/http.serverHandler.ServeHTTP
	/usr/local/go/src/net/http/server.go:2916
net/http.(*conn).serve
	/usr/local/go/src/net/http/server.go:1966

Screenshot
No response
Additional context
Deploying Jaeger operator cluster-wide doesn't crash the pod, but I still see calico-system namespace in the logs:
1.6681757246274092e+09 INFO found the horizontalpodautoscalers api in autoscaling/v2
1.6681757246274357e+09 INFO detecting orphaned deployments.
1.6681757296270556e+09 INFO Determining whether we should enable the Elasticsearch Operator integration
1.6681757296270943e+09 INFO Determining whether we should enable the Kafka Operator integration
1.6681757296289122e+09 INFO found the cronjobs api in batch/v1
1.6681757296306121e+09 INFO found the horizontalpodautoscalers api in autoscaling/v2
1.668175729630688e+09 INFO detecting orphaned deployments.
1.66817573141142e+09 INFO verify deployment {"namespace": "calico-system"}
1.6681757315263824e+09 INFO verify deployment {"namespace": "calico-system"}
1.6681757346238828e+09 INFO Determining whether we should enable the Elasticsearch Operator integration
1.6681757346239202e+09 INFO Determining whether we should enable the Kafka Operator integration
1.6681757346257246e+09 INFO found the cronjobs api in batch/v1
1.6681757346268795e+09 INFO found the horizontalpodautoscalers api in autoscaling/v2
1.6681757346269002e+09 INFO detecting orphaned deployments.

Jaeger backend version
No response
SDK
No response
Pipeline
No response
Stogage backend
No response
Operating system
No response
Deployment model
No response
Deployment configs
No response

Taking a look to the logs and your CRs, I think something is not properly set. I cannot see this in your CRs:
                - name: WATCH_NAMESPACE
                  valueFrom:
                    fieldRef:
                      fieldPath: metadata.annotations['olm.targetNamespaces']

This is set in the ./bundle/manifests/jaeger-operator.clusterserviceversion.yaml file, that is the one used to deploy the operator. So, the operator is trying to reach all the namespaces in your cluster.
Also, is not a crash: it's just a timeout.

There is:
        envFrom:
        - configMapRef:
            name: jaeger-config

which points to ConfigMap containing only WATCH_NAMESPACE: myappnamespace

I have something similar. Bare metal kubernetes, Calico and Jaeger. I have not tried the namespace-scoped deployment. Cluster-wide deployment is fine. But as soon as I create a CR, I see something like this in the operator logs:
1.677246481830629e+09	ERROR	Reconciler error	{"controller": "jaeger", "controllerGroup": "jaegertracing.io", "controllerKind": "Jaeger", "Jaeger": {"name":"jaeger","namespace":"default"}, "namespace": "default", "name": "jaeger", "reconcileID": "1a110673-aea2-4a19-bac7-997882ced9a0", "error": "Internal error occurred: failed calling webhook \"validate.nginx.ingress.kubernetes.io\": failed to call webhook: Post \"https://ingress-nginx-controller-admission.default.svc:443/networking/v1/ingresses?timeout=10s\": dial tcp <IP_ADDRESS>:443: connect: no route to host"}

Here's my CR:
t <<EOF | kubectl apply -f -
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: jaeger
spec:
  strategy: production
  storage:
    type: elasticsearch
    options:
      es:
        server-urls: https://quickstart-es-http:9200
        version: 7
        create-index-templates: false
        tls:
          ca: /es/certificates/ca.crt
        num-shards: 1
        num-replicas: 0
    secretName: jaeger-secret
  volumeMounts:
    - name: certificates
      mountPath: /es/certificates/
      readOnly: true
  volumes:
    - name: certificates
      secret:
        secretName: quickstart-es-http-certs-public
EOF

I checked DNS is fine, and it is. Inside a temporary pod, I can nslookup the server above. Also, other services, e.g. elasic, do not seem to have a problem here ...


Reshuffle things to the DRepPulser incorporates some snap shot things

Move the DRepPulser to Cardano.Ledger.Conway .Governance era (from Cardano.Ledger.Core)
It now returns RatifyState
Addresses some of issue #3722

Checklist

[ ] Commit sequence broadly makes sense and commits have useful messages
[ ] New tests are added if needed and existing tests are updated
[ ] When applicable, versions are updated in .cabal and CHANGELOG.md files according to the
versioning process.
[ ] The version bounds in .cabal files for all affected packages are updated. If you change the bounds in a cabal file, that package itself must have a version increase. (See RELEASING.md)
[ ] All visible changes are prepended to the latest section of a CHANGELOG.md for the affected packages. New section is never added with the code changes. (See RELEASING.md)
[x] Code is formatted with fourmolu (use scripts/fourmolize.sh)
[x] Cabal files are formatted (use scripts/cabal-format.sh)
[x] hie.yaml has been updated (use scripts/gen-hie.sh)
[ ] Self-reviewed the diff

Beautiful piece of work. Thank you @TimSheard


⚠ Bofrost.at has degraded performance

In 112e28d, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1538 ms

Resolved: Bofrost.at performance has improved in 61544a1.


Test: intentionally failing a playwright test to see how it presents in a PR

THIS IS A TEST OF NEW GITHUB ACTIONS

Test complete!


Advanced Templating with multiple Env Vars does not work

At the moment when presented with an AWS secret containing numerous key/value pairs in YAML format, to use one external secret to pull required secrets out you use advanced templating:
template:
  engineVersion: v2
  data:
    config: |
     {{- $secret := .contents | fromYaml}}
        PASSWORD={{ $secret.password | toYaml }}
        USERNAME={{ $secreet.username | toYaml }}

data:
- secretKey: contents
remoteRef:
key: remoteRefToSecret
This created a secret but with
config: |                                                                                │
PASSWORD=mypassword
USERNAME=myusername
Is there a way to use the advanced templating like above but without the indentation, and config: | declaration, currently it does not seem possible.

What is the desired outcome or what is the problem you're trying to solve? Do you want separate keys for username and password?

The scenario is that i have a AWS secret manager secret that contains a YAML inside, this YAML is in the format:
databases:
  storage:
    azure:
      connectionString: "connectionstring"
  mysql:
    host: "mysqlhost"
    password: "password"
    username: "username"
  mysqlsecond:
    host: "mysqlhost"
    password: "password"
    username: "username"
  mongodb:
    host: "mongohost"
    password: "mongopassword"
    username: "mongousername"

I then have an external secret that is choosing for appA mysql and mongodb parameters and for appB mysqlsecond and azure. To then do this i am using the advanced templating, such that appA externalsecret would look like:

    apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
  name: external-secret
  labels:
    helm.sh/chart: chart-0.1
spec:
  refreshInterval: 1h
  secretStoreRef:
    name: external-secret-store
    kind: ClusterSecretStore
  target:
    name: secret
    template:
      engineVersion: v2
      data:
        config: |
          {{- $secret := .contents | fromYaml}}
            MYSQL_HOST : {{ $secret.database.mysql.host | toYaml }}
            MONGODB_HOST: {{ $secret.database.mongodb.host | toYaml }}
  data:
    - secretKey: contents
      remoteRef:
        key: local

however, the secret that is created looks like:
config: |2

    MYSQL_HOST=mysqlhost
    MONGODB_HOST=mongohost

Because of this, the application using it does not see the environment variables because they are being indented inside the pod, due to the config: | which is mandatory to use "{{- $secret := .contents | fromYaml}}" which is needed to cherry pick what secrets are required from the YAML

Hey, if indentation is the issue you can just remove the indentation from your config.
Here's a example with the fake provider:
apiVersion: external-secrets.io/v1beta1
kind: ClusterSecretStore
metadata:
  name: fake
spec:
  provider:
    fake:
      data:
      - key: "appconfig"
        value: "ZGF0YWJhc2VzOgogIHN0b3JhZ2U6CiAgICBhenVyZToKICAgICAgY29ubmVjdGlvblN0cmluZzogImNvbm5lY3Rpb25zdHJpbmciCiAgbXlzcWw6CiAgICBob3N0OiAibXlzcWxob3N0IgogICAgcGFzc3dvcmQ6ICJwYXNzd29yZCIKICAgIHVzZXJuYW1lOiAidXNlcm5hbWUiCiAgbXlzcWxzZWNvbmQ6CiAgICBob3N0OiAibXlzcWxob3N0IgogICAgcGFzc3dvcmQ6ICJwYXNzd29yZCIKICAgIHVzZXJuYW1lOiAidXNlcm5hbWUiCiAgbW9uZ29kYjoKICAgIGhvc3Q6ICJtb25nb2hvc3QiCiAgICBwYXNzd29yZDogIm1vbmdvcGFzc3dvcmQiCiAgICB1c2VybmFtZTogIm1vbmdvdXNlcm5hbWUiCgo="
        version: "v1"
---
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
  name: example
spec:
  refreshInterval: "10s"
  secretStoreRef:
    name: fake
    kind: ClusterSecretStore
  target:
    name: "app-config"
    template:
      data:
        # note: there's an additional b64dec step which is needed just to store
        # the yaml in the fake provider.
        config: |
          {{- $secret := .contents | b64dec | fromYaml -}}
          MYSQL_HOST={{ $secret.databases.mysql.host }}
          MONGODB_HOST={{ $secret.databases.mongodb.host }}
  data:
  - secretKey: contents
    remoteRef:
      key: appconfig
      version: v1
---

kubectl get secret app-config -o yaml | yq .data.config | base64 -d
MYSQL_HOST=mysqlhost
MONGODB_HOST=mongohost


camera.record service perpetually keeps going at times,

The problem

Environment

Home Assistant release with the issue: 103.0
Last working Home Assistant release (if known):  none
Operating environment (Hass.io/Docker/Windows/etc.): docker on ubuntu
Integration causing this issue: camera.record
Link to integration documentation on our website: na

Problem-relevant configuration.yaml

camera:
  - platform: onvif
    host: <IP_ADDRESS>
    name: voortuin
    username: admin
    password:
    port: 8080

Traceback/Error logs

{"message":"Call-service API error.  Error Message: Stream already recording to /share/voortuin/2020-02-18T11:49:29.734Z.mp4!","source":{"id":"a389d381.0c241","type":"api-call-service","count":1}}

Additional information
Camera.record service doesn't always stop recording after duration has ended. This never works on ffmpeg streams (https://github.com/home-assistant/home-assistant/issues/30025) but sometimes works with ONVIF and Generic. However, sporadically, the recording will not end after duration on MJPEG, ONVIF and GENERIC cameras either
My proposal to fix this issue is to add a camera.stop_Recording or fix the underlying issue.

Please comment on #30025 rather than opening a new issue for the same problem.


Unpickle failed on builtin bytes with no arguments

Got an exception saying that constructor needs 1 or 2 arguments but got 0 on load_reduce of a byte array.
Pickle file is as follows:
0: \x80 PROTO      2
2: }    EMPTY_DICT
3: q    BINPUT     0
5: (    MARK
6: X        BINUNICODE 'modules/ATL.rpymc'
28: q        BINPUT     1
30: ]        EMPTY_LIST
31: q        BINPUT     2
33: J        BININT<PHONE_NUMBER>
38: J        BININT<PHONE_NUMBER>
43: c        GLOBAL     'builtin bytes'
62: q        BINPUT     3
64: )        EMPTY_TUPLE
65: R        REDUCE
66: q        BINPUT     4
68: \x87     TUPLE3
69: q        BINPUT     5
71: a        APPEND

how was the pickle created?

The pickle was created by Ren'Py 8.1 using Python 3.9
I have also attached the complete pickle
dirlist.zip

Oh, what version are you using that gives the error?  Java or .NET?  (or maybe both).

Ok I think I fixed this in badc8fe08c9e47b87df66b8a16c67010e3614e35
can you try it to see if it gives satisfactory results now? If so I shall release an updated version.

That works for me. Only you did not update the exception text for the .net variant.
This issue can be closed, but I gone add at least one more. Now I got a missing class builtin frozenset, but there might be more so I will first go through the stuff further before I open a new issue.

I updated the error message text now.
I'll hold off making a new release for a while so we can try to fix other errors you might run into (weird, it seems some details have changed in the pickle data format in recent python versions perhaps....)  , but I'll close this issue.

published new 1.4 release.


Add .getTransactionId on queries

Problem
When executing a query against Hedera, running the query may incur a cost which translates to a transaction on the network.
The query builder takes care of setting up the payment transaction, however the TransactionId for the cryptoTransfer is opaque to the developer.
It should be possible to consult the generated transaction id (or set it)
Solution
Add a .getTransactionId and/or setTransactionId on queries
Alternatives
No response

I didn't realize this at the time, but this is already implemented as get paymentTransactionId() since get transactionId() would not work for Transaction[Receipt|Record]Query; I literally only realized this now as I was trying to implement get transactionId()


nwg-panel: 0.7.17 -> 0.9.10

Description of changes
Updating package 0.7.17 -> 0.9.10
Adding playerctl dependency

Things done

Built on platform(s)

[ *] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ *] Fits CONTRIBUTING.md.

Can you add yourself to meta.maintainers?


OpenCV error while using the handwrite.exe on windows 10

Hi,
Thanks for this wonderful tool.
I am trying to use it on Windows Home 10.
I have installed fontforge in usual program files (x86) folder by download the installer.
Potrace is downloaded as zip and added the path to it in PATH env var.
Then from cmd I am running handwrite --directory "temp" "inputscan.jpg" "outputfont/"
In temp dir it creates all the folders per char.png (folder 59 is empty)
Then program throws error in sheettopng.py > cv2.inwrite() as below:
File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 197, in _run_module_as_main     return _run_code(code, main_globals, None,   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 87, in _run_code     exec(code, run_globals)   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\Scripts\handwrite.exe\__main__.py", line 7, in <module>   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\site-packages\handwrite\cli.py", line 56, in main     converters(   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\site-packages\handwrite\cli.py", line 34, in converters     run(sheet, output_directory, directory, config, metadata)   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\site-packages\handwrite\cli.py", line 12, in run     SHEETtoPNG().convert(sheet, characters_dir, config)   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\site-packages\handwrite\sheettopng.py", line 47, in convert     self.save_images(   File "C:\Users\tushar\AppData\Local\Programs\Python\Python39\lib\site-packages\handwrite\sheettopng.py", line 158, in save_images     cv2.imwrite( cv2.error: OpenCV(4.6.0) D:\a\opencv-python\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:801: error: (-215:Assertion failed) !_img.empty() in function 'cv::imwrite'
I am new to python, please let me know if I am missing anything.
Thanks,
Tushar

Hey @tushar-soni, we aren't working on handwrite actively at the moment, @sakshamarora1/me will look into it as we get some time and see if we can help.


dyld: Library not loaded: libOpenImageIO.1.6.dylib

On a (albeit old) version of MacOSX (10.7) and am attempting to build the stable release 1.6. It compiles but all references to the app/python api fail with the error:
>>> ./oiiotool --help
dyld: Library not loaded: libOpenImageIO.1.6.dylib
  Referenced from: /Users/myname/Documents/nuke_suff/oiio/dist/macosx/bin/./oiiotool
  Reason: image not found
Trace/BPT trap: 5

This seems like the same issue from a previous ticket that was closed out.
I've attempted relinking a few of the libraries that it depends on but to no avail yet. I can submit a full VERBOSE=1 make if need be.
Cheers

Hmmm.. Seems to have been the lib file wanted to be directly next to the applications. That's different from my linux build.
I ran:
>>>cd dist/macosx/lib
>>>cp ./libOpenImageIO.1.6.dylib ./../bin/

and the tool began to work.
I'm going to leave this open for a small time to see if anyone has any thoughts as to why this would not have been created properly?

Okay. So it seems that the copy works purely because that would be my pwd. If I set the path up in my PYTHONPATH and attempt to use it from a different location it seems to break the same way.


Filtering (by filterbox) for Line Chart with Time Shift slice doesn't work properly

Make sure these boxes are checked before submitting your issue - thank you!

[x] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[] I have reproduced the issue with at least the latest released version of superset.
[x] I have checked the issue tracker for the same issue and I haven't found one similar.

Superset version
0.26.3
Expected results
Main line in Line Chart with time shift respects filter set in the filterbox on the same dashboard
Actual results
On one dashboard we have filterbox and line chart (with time shift), which display current data and data with 1 year back time shift. On dashboard load (default settings of the filterbox) the chart shows proper results for actual data and data in the past (see image below)
When I change filter in the filterbox, only time shift line (1 year back) shows correct data, line with the actual data remains the same (see image below)
It seems like changes in the filterbox doesn't affect on actual (main line) data in the chart. When I explore the slice with the chart, and set the same filters there, both lines show proper results.
Steps to reproduce

Create new dashboard
add filtebox to the dashboard (with some time range, and "show all" for other filter criterias)
add slice with Line Chart (with time shift) to the dashboard
save dashboard and open it for view
apply some filter on the filterbox

Screenshot before filtering:

Screenshot after filtering:

Were you able to solve the issue? I am facing the exact same issue.

Unfortunately I couldn't find a fix for this and it forced me to install 0.29 version of superset (0.29rc7). This feature works well there.

Not sure if this is the right place for this, but the red dot in the legend doesn't help recognising what the solid and the dashed lines stand for? some help would be appreciated. Is there a way i can change dots in the legend to soild and dashed lines respectively?


Portkey Integration with Anything LLM

Pull Request Type

[x] ✨ feat
[ ] 🐛 fix
[ ] ♻ refactor
[ ] 💄 style
[ ] 🔨 chore
[ ] 📝 docs

Relevant Issues

resolves #2736
What is in this change?
Add support for Portkey AI LLM provider
Additional Information

Developer Validations

[x] I ran yarn lint from the root of the repo & committed changes
[x] Relevant documentation has been updated
[x] I have tested my code functionality
[x] Docker build succeeds locally

@timothycarambat can you take a look at this?


Tsan: fix data race on Event::insertEvent

What problem does this PR solve?
Issue Number: close #7409
Problem Summary:
What is changed and how it works?
In the original implementation, output->addInput may be called by multiple threads, leading to data race issues.
Here we change
    /// eventA───────►eventB ===> eventA─────────────►eventB
    ///                             │                    ▲
    ///                             └────►insert_event───┘

to
    /// eventA───────►eventB ===> eventA───►insert_event───►eventB

, so that it will not cause data race issues.
Check List
Tests

[x] Tsan
[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/merge


Unable to use APIGatewayV2Request with Lambda authorizer

Expected behavior
Ability to process context from a Lambda authorizer in APIGatewayV2Request
Actual behavior
Fails trying to deserialize jwt from the Authorizer struct which isn't present for Lambda authorizers, from CloudWatch logs:
warning Lambda : lifecycleIteration=0 [AWSLambdaRuntimeCore] lambda handler returned an error: requestDecoding(Swift.DecodingError.keyNotFound(CodingKeys(stringValue: "jwt", intValue: nil), Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "requestContext", intValue: nil), CodingKeys(stringValue: "authorizer", intValue: nil)], debugDescription: "No value associated with key CodingKeys(stringValue: \"jwt\", intValue: nil) (\"jwt\").", underlyingError: nil)))

Also, would be nice to have structs for Lambda authorizer payloads
Steps to reproduce

Create API Gateway (HTTP API)
Create route in gateway and attach both Lambda authorizer (not JWT authorizer) and integration
Call the route

If possible, minimal yet complete reproducer code (or URL to code)
Looks like https://github.com/swift-server/swift-aws-lambda-events/blob/3ac078f4d8fe6d9ae8dd05b680a284a423e1578d/Sources/AWSLambdaEvents/APIGateway%2BV2.swift#L35 needs to be made optional (guessing this will be a breaking change because of Swift's type safety when compiling)
SwiftAWSLambdaRuntime version/commit hash
3ac078f4d8fe6d9ae8dd05b680a284a423e1578d
Swift & OS version (output of swift --version && uname -a)
swift-driver version: 1.87.1 Apple Swift version 5.9 (swiftlang-<IP_ADDRESS>.108 clang-15<IP_ADDRESS>)
Target: arm64-apple-macosx14.0
Darwin <IP_ADDRESS> 23.1.0 Darwin Kernel Version 23.1.0: Mon Oct  9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000 arm64

@GeorgePreece funny timing, I just realized it doesn't support iam authorizer neither.
I just submited a PR https://github.com/swift-server/swift-aws-lambda-events/pull/41/files
Can you share here the raw JSON inside authorizer (sanitized to not include confidential informations) ?
I can make a second PR now that I have a dev setup in place

Here is the doc for Lambda Authorizers payload
https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html
I guess we would need to add support for whatever is inside the authorization object.
The docs says
      "clientCert": {
        "clientCertPem": "CERT_CONTENT",
        "subjectDN": "www.example.com",
        "issuerDN": "Example issuer",
        "serialNumber": "1",
        "validity": {
          "notBefore": "May 28 12:30:02 2019 GMT",
          "notAfter": "Aug  5 09:36:04 2021 GMT"
        }

but I'm not sure it always pass a certificate.
The APIGatewayV2Response is not applicable.
We need to add a new type APIGatewayV2LambdaAuthorizerResponse (?) to support responses like
{
  "isAuthorized": true/false,
  "context": {
    "exampleKey": "exampleValue"
  }
}

@GeorgePreece funny timing, I just realized it doesn't support iam authorizer neither. I just submited PR #41

amazing! thank you @sebsto :)

Can you share here the raw JSON inside authorizer (sanitized to not include confidential information) ?

absolutely! here's an example:
"authorizer": {
    "lambda": {
        "abc": "xyz"
    }
}

Thank you @GeorgePreece
What is the content of lambda ?  Is it a generic [String:String] ?

Thank you @GeorgePreece What is the type of the content for the lambda object ? Is it a generic [String:String] ?

yep, that's right
it is the same as the context object set in the authorizer response

@GeorgePreece can you test the code change on this branch ?
https://github.com/sebsto/swift-aws-lambda-events/tree/sebsto/lambda_authorizers
If it works, I'll send the PR to the main project.
If it doesn't work, please share the full JSON you receive
There is a new struct to support the authorizer's response:
public struct APIGatewayLambdaAuthorizerResponse: Decodable {
    public let isAuthorized: Bool
    public let context: LambdaAuthorizerContext?
}

@GeorgePreece can you test the code change on this branch ? https://github.com/sebsto/swift-aws-lambda-events/tree/sebsto/lambda_authorizers
If it works, I'll send the PR to the main project. If it doesn't work, please share the full JSON you receive
There is a new struct to support the authorizer's response:
public struct APIGatewayLambdaAuthorizerResponse: Decodable {
    public let isAuthorized: Bool
    public let context: LambdaAuthorizerContext?
}

hey @sebsto, I'm unable to initialise the struct I believe because it's conforming to Decodable rather than Encodable
also here is a sanitised request that is sent to the Lambda authorizer from API Gateway:
{
    "version": "2.0",
    "type": "REQUEST",
    "routeArn": "arn:aws:execute-api:eu-north-1:000000000000:0000000000/dev/GET/applications",
    "identitySource": [
        "abc.xyz.123"
    ],
    "routeKey": "GET /applications",
    "rawPath": "/dev/applications",
    "rawQueryString": "",
    "headers": {
        "accept": "*/*",
        "authorization": "abc.xyz.123",
        "content-length": "0",
        "host": "0000000000.execute-api.eu-north-1.amazonaws.com",
        "user-agent": "curl/8.1.2",
        "x-amzn-trace-id": "Root=1-00000000-000000000000000000000000",
        "x-forwarded-for": "<IP_ADDRESS>",
        "x-forwarded-port": "443",
        "x-forwarded-proto": "https"
    },
    "requestContext": {
        "accountId": "000000000000",
        "apiId": "0000000000",
        "domainName": "0000000000.execute-api.eu-north-1.amazonaws.com",
        "domainPrefix": "0000000000",
        "http": {
            "method": "GET",
            "path": "/dev/applications",
            "protocol": "HTTP/1.1",
            "sourceIp": "<IP_ADDRESS>",
            "userAgent": "curl/8.1.2"
        },
        "requestId": "QHACgr8sig0MELg=",
        "routeKey": "GET /applications",
        "stage": "dev",
        "time": "15/Dec/2023:20:35:03 +0000",
        "timeEpoch":<PHONE_NUMBER>230
    }
}

of course, silly me.
It's corrected.
In addition to APIGatewayV2Request to support lambda objects in authorizer, there are two new struct to use with the authorizer function :

APIGatewayLambdaAuthorizerRequest
APIGatewayLambdaAuthorizerResponse

of course, silly me. It's corrected.
In addition to APIGatewayV2Request to support lambda objects in authorizer, there are two new struct to use with the authorizer function :
* `APIGatewayLambdaAuthorizerRequest`

* `APIGatewayLambdaAuthorizerResponse`

Same branch : https://github.com/sebsto/swift-aws-lambda-events/tree/sebsto/lambda_authorizers

thanks! deserialisation is now working for both the request objects :) only ask here is, would you be able to expose identitySource so I can access the tokens mapped from gateway?
also, still having issues with initialising the response unfortunately, I think a public initialiser needs to be defined

Apologies for the delayed response. I built my own Lambda Authorizer lambda function in Swift to actually test these changes myself instead of asking you to test them.
Here are the new structs

APIGatewayLambdaAuthorizerRequest the request - unmodified since last push
APIGatewayLambdaAuthorizerSimpleResponse for simple responses (isAuthorized: true/false)
APIGatewayLambdaAuthorizerPolicyResponse for IAM policy responses

Here is a sample simple authorizer :
@main
struct MySimpleLambda: SimpleLambdaHandler {
    func handle(_: APIGatewayLambdaAuthorizerRequest,
                context _: LambdaContext) async throws
        -> APIGatewayLambdaAuthorizerSimpleResponse
    {
		print("+++ Simple Authorizer called +++")
        return APIGatewayLambdaAuthorizerSimpleResponse(
            isAuthorized: true,
            context: ["abc1": "xyz1"]
        )
    }
}

Here is an IAM policy authorizers :
@main
struct MyPolicyLambda: SimpleLambdaHandler {
    func handle(_: APIGatewayLambdaAuthorizerRequest,
                context _: LambdaContext) async throws
        -> APIGatewayLambdaAuthorizerPolicyResponse
    {
		print("+++ Policy Authorizer called +++")

        let resp = APIGatewayLambdaAuthorizerPolicyResponse(
            principalId: "John Appleseed",

            policyDocument: .init(statement: [
                .init(action: "execute-api:Invoke",
                      effect: .allow,
                      resource: "*"),

            ]),

            context: [
                "abc1": "xyz1",
                "abc2": "xyz2",
            ]
        )

        return resp
    }
}

Here is how I attach a Lambda authorizer to another Lambda function (I use SAM)
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: SAM Template for QuoteService

Globals:
  Function:
    Timeout: 60
    CodeUri: .
    Handler: swift.bootstrap
    Runtime: provided.al2
    MemorySize: 512
    Architectures:
      - arm64

Resources:
  # Lambda function
  QuoteService:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        # pass through all HTTP verbs and paths
        Api:
          Type: HttpApi
          Properties:
            ApiId: !Ref MyProtectedApi
            Path: /{proxy+}
            Method: ANY
            Auth:
              Authorizer: MyLambdaAuthorizer

    Metadata:
      BuildMethod: makefile

  MyProtectedApi:
    Type: AWS::Serverless::HttpApi
    Properties:
      Auth:
        DefaultAuthorizer: MyLambdaAuthorizer
        Authorizers:
          MyLambdaAuthorizer:
            AuthorizerPayloadFormatVersion: 2.0
            EnableFunctionDefaultPermissions: true
            EnableSimpleResponses: false
            FunctionArn: arn:aws:lambda:us-east-1:012345678912:function:LambdaAuthorizer
            Identity:
              Headers:
                - Authorization

# print API endpoint
Outputs:
  SwiftAPIEndpoint:
    Description: "API Gateway endpoint URL for your application"
    Value: !Sub "https://${MyProtectedApi}.execute-api.${AWS::Region}.amazonaws.com"

Apologies for the delayed response. I built my own Lambda Authorizer lambda function in Swift to actually test these changes myself instead of asking you to test them.
Here are the new structs

APIGatewayLambdaAuthorizerRequest the request - unmodified since last push
APIGatewayLambdaAuthorizerSimpleResponse for simple responses (isAuthorized: true/false)
APIGatewayLambdaAuthorizerPolicyResponse for IAM policy responses

Here is a sample simple authorizer :
@main
struct MySimpleLambda: SimpleLambdaHandler {
    func handle(_: APIGatewayLambdaAuthorizerRequest,
                context _: LambdaContext) async throws
        -> APIGatewayLambdaAuthorizerSimpleResponse
    {

        return APIGatewayLambdaAuthorizerSimpleResponse(
            isAuthorized: true,
            context: ["abc1": "xyz1"]
        )
    }
}

Here is an IAM policy authorizers :
@main
struct MyPolicyLambda: SimpleLambdaHandler {
    func handle(_: APIGatewayLambdaAuthorizerRequest,
                context _: LambdaContext) async throws
        -> APIGatewayLambdaAuthorizerPolicyResponse
    {

        let resp = APIGatewayLambdaAuthorizerPolicyResponse(
            principalId: "John Appleseed",

            policyDocument: .init(statement: [
                .init(action: "execute-api:Invoke",
                      effect: .allow,
                      resource: "*"),

            ]),

            context: [
                "abc1": "xyz1",
                "abc2": "xyz2",
            ]
        )

        return resp
    }
}

Here is how I attach a Lambda authorizer to another Lambda function (I use SAM)
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: SAM Template for QuoteService

Globals:
  Function:
    Timeout: 60
    CodeUri: .
    Handler: swift.bootstrap
    Runtime: provided.al2
    MemorySize: 512
    Architectures:
      - arm64

Resources:
  # Lambda function
  QuoteService:
    Type: AWS::Serverless::Function
    Properties:
      Events:
        # pass through all HTTP verbs and paths
        Api:
          Type: HttpApi
          Properties:
            ApiId: !Ref MyProtectedApi
            Path: /{proxy+}
            Method: ANY
            Auth:
              Authorizer: MyLambdaAuthorizer

    Metadata:
      BuildMethod: makefile

  MyProtectedApi:
    Type: AWS::Serverless::HttpApi
    Properties:
      Auth:
        DefaultAuthorizer: MyLambdaAuthorizer
        Authorizers:
          MyLambdaAuthorizer:
            AuthorizerPayloadFormatVersion: 2.0
            EnableFunctionDefaultPermissions: true
            EnableSimpleResponses: true
            FunctionArn: arn:aws:lambda:us-east-1:012345678912:function:LambdaAuthorizer
            Identity:
              Headers:
                - Authorization

# print API endpoint
Outputs:
  SwiftAPIEndpoint:
    Description: "API Gateway endpoint URL for your application"
    Value: !Sub "https://${MyProtectedApi}.execute-api.${AWS::Region}.amazonaws.com"

no problem, works like a charm! thank you 🥳

Thank you @GeorgePreece for the review.
PR sent https://github.com/swift-server/swift-aws-lambda-events/pull/42

closed by https://github.com/swift-server/swift-aws-lambda-events/pull/42
Thank you @tomerd for the quick review


sqr() and sqr_entries()?

Would it make sense to change sqr() to sqr_entries() and introduce sqr() to be just its argument times itself, so it can work on matrices?

Seems to me that sqr(v) should vary by type of v:

Where v is scalar: v*v
Where v is a vector: vmul(v,v)
Where v is a matrix: v*v

All of those are so simple, I'm now questioning the need for sqr() at all.

sqr() is absolutely needed.   Yes, it's simple, but I don't want to write
(a+b-2*x+3-y)*(a+b-2*x+3-y)

Implemented in 1435100e37d18bdd9a932055cd91a64435686d01

I was just noticing that if v is a vector then vv is the sum of squares.   This makes it seem like sum_of_squares should go away, and sqr(v) should compute vv, and my original idea of sqr_entries introduced to square the entries of a list.   Thoughts?  Note sum_of_squares should be rewritten as v*v presumably if it is retained.   Any idea how often sqr() is used on a vector in the existing code?

I would have said I don't recall actually using sqr() anywhere else in the library, but there actually seems to be a fair number of places it's used.  I don't think it's used on anything but scalars anywhere in the library, though.  The only places I'm unsure of are in:

bezier_curvature()
path_curvature()

The semantics of what squaring a vector means isn't clear to me.  The vector v*v is specifically a dot product, which is also the sum of squares.  But an element-wise squaring seems as valid to me.   I'm willing to just make it function sqr(x) = x*x;, though, for elegance.  But wasn't that what we started with?
BTW, I noticed a couple places where we use the pattern sqrt(sqr(x)+sqr(y)), which is the same as norm([x,y]).

Given that the library uses element-wise squaring absolutely nowhere, and it can be done by [for (x=vec) x*x], I don't really see a need for sqr_entries().


How to configure the path (zookeeper)

What did you do?
What did you expect to see?
What did you see instead? Under which circumstances?
Environment

System information:
insert output of uname -srm here

Prometheus version:
insert output of prometheus -version here

Alertmanager version:
insert output of alertmanager -version here (if relevant to the issue)

Prometheus configuration file:

insert configuration here

Alertmanager configuration file:

insert configuration here (if relevant to the issue)

Prometheus configuration file:
```scrape_configs:
  - job_name: 'dcos'
    metrics_path: /metrics

    static_configs:
      - targets: ['localhost:9090']

    serverset_sd_configs:

    - servers:

     # - '<IP_ADDRESS>:2181'
      - '<IP_ADDRESS>:2181'
      paths:
      - '/root/data/go_work/src/zookeeper_exporter'

* Logs:
```INFO[0000] Build context (go=go1.5<EMAIL_ADDRESS>date=20160908-07:47:31)  source=main.go:74
INFO[0000] Loading configuration file prometheus.yml     source=main.go:221
INFO[0000] Loading series map and head chunks...         source=storage.go:358
INFO[0000] 1992 series loaded.                           source=storage.go:363
WARN[0000] No AlertManagers configured, not dispatching any alerts  source=notifier.go:176
INFO[0000] Listening on :9090                            source=web.go:233
INFO[0000] Starting target manager...                    source=targetmanager.go:75
ERRO[0000] Error during initial read of Zookeeper: path /root/data/go_work/src/zookeeper_exporter does not exist  source=treecache.go:70

insert Prometheus and Alertmanager logs relevant to the issue here

That should be a zookeeper path, not a filesystem path.

I'm sorry that ask in this thread, but should I create path in zookeeper ahead of time, or it will be created by prometheus automatically?


feat port:Algebra.Order.Positive.Ring

655994e298904d7e5bbd1e18c95defd7b543eb94
Renaming coe_mul etc to val_mul and giving names to instances the only real changes here.

bors merge


Rename the project

Maybe an hour ago I've remembered that I had read something in last week's Ruby Weekly about a new implementation attempt of a mountable rails CMS engine.
The crazy thing is: I correctly remembered the name – "maglev" !
Thing is: There are a couple software projects with the exact same name. Even in open source ruby space. It took me some time to get here.
What about just an innocent unique short string (like "ogep" or something)?

yeah, like the Maglev Ruby VM from Gemstone...altought the repo was archived some months ago

I get that the name is being used by another Ruby gem (which is no longer maintained and outdated) but I will stick with the name Maglev. Besides, on Rubygems, I used maglevcms as its gem name. So I guess it's fine.


Add DropDownMenuKit

Added DropDownMenuKit, an iOS framework to create menus attached to the toolbar or navigation bar.
Project URL
https://github.com/qmathe/DropDownMenuKit
Checklist

[x] Only one project/change is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 7 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

          1 Error

  :no_entry_sign:
  Found 1 link issue

Link issue by awesome_bot

Line
Status
Link

380
301
https://github.com/pepibumur/SugarRecord redirects tohttps://github.com/SugarRecord/SugarRecord

  Generated by :no_entry_sign: danger

First with the DistancePicker lib, now with this cool dropdown. Keep going with the cool work! 🔥🔥
Thanks for contributing, @qmathe

Thanks  a lot, Lucas :-) I hope to contribute again in the future!


Local Variable Error

Expected Behavior
Script should run normally
Actual Behavior
2016-08-07 10:34:34,334 [       cli] [INFO] PokemonGO Bot v1.0
Traceback (most recent call last):
File "pokecli.py", line 493, in
main()
File "pokecli.py", line 126, in main
if bot:
UnboundLocalError: local variable 'bot' referenced before assignment
Steps to Reproduce
Other Information
OS:
Git Commit: (run 'git log -n 1 --pretty=format:"%H"' and paste it here)
Python Version: (run 'python -V' and paste it here)

Had this happen to me. look for an extra comma in your config file. Perhaps running your config through http://jsonlint.com/ will find it. It did for me.

https://github.com/camarokris Thanks Buddy, one extra comma in location itself. it worked.


changed color of hover from blue to human rights first's lighter orange.

Description
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

[x ] This change requires a documentation update

Change Status

[x] Complete, tested, ready to review and merge

Checklist

[x ] My code follows the style guidelines of this project
[x ] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[x] I have commented my code, particularly in hard-to-understand areas
[x ] I have made corresponding changes to the documentation
[ x] My changes generate no new warnings
[x ] I have added tests that prove my fix is effective or that my feature works
[x ] New and existing unit tests pass locally with my changes
[x ] There are no merge conflicts

There wasn't any agreement on the color as a whole, so I decided to just use a color that is in the color scheme. We can change it to anything, it was just noted to change, not anything specific.

Oh nice!  I think that looks great!

That color looks great! I did actually change the hover style already though. I was talking with Ryan Dill and we decided to change it to a white underline/white text on hover. If you guys want to change it to this style then you may have to remove the underline styling on hover that I added.

Yea definitely a screenshot would be helpful to add to the PR


adding Travis test for rubinius 2.2.7

Coverage remained the same at 85.714% when pulling 1c7623a643b55edcfc012f9aa5a3a64990eb8666 on rubinius_travis_check into 6fb697dcf6f79c0e96c45b8c2432daf6b7e97e8e on master.

Coverage remained the same at 85.714% when pulling c3864df9a4a692bdc674618c9705cb2e7034437a on rubinius_travis_check into 6fb697dcf6f79c0e96c45b8c2432daf6b7e97e8e on master.


[Live] fix bug when trying to hydrate nullable Doctrine Entity

Q
A

Bug fix?
yes

New feature?
no

Tickets
n/a

License
MIT

Fixes a regression in 2.1 where a nullable entity is attempted to be loaded from Doctrine. In 2.0, null was dropped from the component data loading the entity wasn't attempted.

I wonder if this change should be in the hydration system itself:

Let's keep the behavior simple and predictable (i.e. always run a value through the hydration system) :)


MATLAB: set up CI for MacOS and Windows

Yes, I think setting up for at least MacOS will be relatively straight forward: You will just have to make another step like this one:
https://github.com/bids-standard/bids-matlab/blob/6c1dac65880df28b69ec131983cd8bbbfce1c258/.github/workflows/run_tests.yml#L22-L26
but ensure that the (then two) steps run depending on the OS. that is, one runs only when OS=ubuntu, the other one only when OS=macOs
For the Ubuntu step, you leave everything as it is ... and for the MacOS step you adjust the "apt" installs with "brew" installs. The remaining action should work regardless of ubuntu or MacOS.
--> for windows it would go the same way ... first duplicating the steps, then making them run conditionally on a single OS only, and then adjusting the duplicated-OS-specific steps to actually work on that OS. I mean -> apt on ubuntu, brew on macOS, and maybe chocolatey on windows, ... and so on for all other commands.
I am not sure how easy this will be with windows. I once managed it for a similarly "complicated" install for the bids-validator. Hopefully it can serve as an example of what I mean:
https://github.com/sappelhoff/bids-validator/blob/407b94c388bf36005069e0a4f0c67a21fbcdc8b8/.github/workflows/python_tests.yml#L14-L42
Originally posted by @sappelhoff in https://github.com/bids-standard/bids-matlab/issues/68#issuecomment-763523617

See issue #165 as an example of something to check in CI!!

Won't do unless we start having significant number of bug reports specific to these platforms.


Traefik with Run-AlValidation

Describe the issue
I'm trying to run the Run-AlValidation command on a server where I have traefik installed but get an error,
"Using Traefik only makes sense if you allow external access, so you have to provide the public DNS name (param -PublicDnsName)"
Is there a way to set the PublicDnsName when running this command or have the -useTraefik:$false by default?
Scripts used to create container and cause the issue
$validationResult = Run-AlValidation -licenseFile $licenseFile `
                                     -previousApps $previousApps `
                                     -apps $apps `
                                     -validateCurrent `
                                     -countries $countries `
                                     -affixes $affixes `
                                     -supportedCountries $countries `

**Output of scripts**

Creating container for country us
BcContainerHelper is version 1.0.15
BcContainerHelper is running as administrator
Host is Microsoft Windows Server 2019 Datacenter - ltsc2019
Docker Client Version is 19.03.5
Docker Server Version is 19.03.5
Downloading application artifact /sandbox/17.1.18256.19737/us
Downloading C:\Users\CD\AppData\Local\Temp\7\4cf8023b-8f26-4f9d-91b9-373d90e4c3ff.zip
Unpacking application artifact to tmp folder using Expand-Archive
Downloading platform artifact /sandbox/17.1.18256.19737/platform
Downloading C:\Users\CD\AppData\Local\Temp\7\98a89e18-927a-468b-8403-ae8830ef1784.zip
Unpacking platform artifact to tmp folder using Expand-Archive
Downloading Prerequisite Components
Downloading c:\bcartifacts.cache\sandbox\17.1.18256.19737\platform\Prerequisite Components\Open XML SDK 2.5 for Microsoft Office\OpenXMLSDKv25.msi
Downloading c:\bcartifacts.cache\sandbox\17.1.18256.19737\platform\Prerequisite Components\IIS URL Rewrite Module\rewrite_2.0_rtw_x64.msi
Downloading c:\bcartifacts.cache\sandbox\17.1.18256.19737\platform\Prerequisite Components\DotNetCore\DotNetCore.1.0.4_1.1.1-WindowsHosting.exe
Fetching all docker images
WARNING: useTraefik not specified, but Traefik container was initialized, using Traefik. Specify -useTraefik:$false if you do NOT want to use Traefik.
Enabling SSL as otherwise all clients will see mixed HTTP / HTTPS request, which will cause problems e.g. on the mobile and modern windows clients
Removing container took 1 seconds
Using Traefik only makes sense if you allow external access, so you have to provide the public DNS name (param -PublicDnsName)
At C:\Program Files\WindowsPowerShell\Modules\BcContainerHelper\1.0.15\ContainerHandling\New-NavContainer.ps1:589 char:13

        throw "Using Traefik only makes sense if you allow extern ...

        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (Using Traefik o...-PublicDnsName):String) [], RuntimeException
FullyQualifiedErrorId : Using Traefik only makes sense if you allow external access, so you have to provide the public DNS name (param -PublicDnsName)

Looked at this.
The reason for this problem (as you know) is that the publicDnsName of the computer is not specified.
You can create a text file called C:\inetpub\wwwroot\hostname.txt with you public dns name inside, then that will be picked up by New-BcContainer and used as PublicDnsName and containers will automatically get traefik.
Or you can get the next version of containerhelper where I have modified New-BcContainer to ONLY default to traefik if publicDnsName is specified or the hostname.txt file is present, meaning in Run-AlValidation it will not add traefik to the containers and it should also not be needed.

Fix shipped in 1.0.16


[Feature]: per-mode implementations for functions (funcs)

Similar Issues

[X] Before filing, I have searched for similar issues.

Description
Very similiar to, but for functions:

https://github.com/mrjones2014/legendary.nvim/issues/215

Can we have the same feature for legendary.funcs(...)?
There are functions, that can only be run in visual mode, so it's logical to have { mode = {...} } restrictions so upon running :Legendary we have these funcs filtered...
endary.funcs({
	{ mode = { "v" }, description = "Buffer: my fn in visual mode" , fn }
})

Sounds good. Should be pretty easy to implement.

We need an alternative to legendary.nvim; this project along with some others isn't contribution-friendly; please notify me if you want to unite an effort in replacing it.

This project is definitely contribution friendly! For context for everyone else reading, @hinell made a PR, I requested some changes, and he refused to make them. I'm under no obligation to merge an incomplete PR just because you say so. Here's the PR in question: #415
Anyone else is more than welcome to pick up the PR and actually implement the very simple changes I requested in order to make the feature align with the existing API for other item types 🙂

The problem is that @mrjones2014 have asked me to implement entire keymaps-like mode= api in my #415 PR when it was never intended for it; I suggested and suggest to do that himself as he  knows better what he wants, not me. This issue might be safely closed when  #415 is merged, cause what is implemented out there is enough to respect nvim editor modes when functions are run. Cheers.

entire keymaps-like mode= api

Not sure what you mean. All I was saying is if we're supporting modes, like we do with keymaps, then we should support the same item definition syntax. Seems like a pretty simple ask to me.


Added Proofs and Types book by Jean-Yves Girard, Paul Taylor and Yves Lafont

What does this PR do?
Add resource
For resources
Description
Proofs and Types book by Jean-Yves Girard, Yves Lafont, Paul Taylor
Why is this valuable (or not)?
Goods book about  Typed Lambda-calculus
How do we know it's really free?
The author Paul Taylor himself give pdf link on his website
For book lists, is it a book? For course lists, is it a course? etc.
Books published by Cambridge University Press in 1989
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


🌐 Add Chinese translation for docs/zh/docs/environment-variables.md

Add Chinese translation for environment-variables.md
为 environment-variables.md (环境变量) 一章添加翻译

I'm very sorry; due to my mistake, translations for two different pages were pushed into the same pull request. I will close this incorrect pull request and resubmit it.
非常抱歉，我的错误操作导致将两个不同页面的翻译推入了同一个 pull request。我将关闭这个错误的 pull request 并重新提交。


safe values should be raw

@joeldrapper @willcosgrove
so I made html_safe and safe consistent in this pr and also created __implicit_output__ and made plain use old __text__ instead so we can render html_safe as raw by default, unless it's plain.  Or should I rollback the change to __implicit_output__  that allows to pass safe into a component without raw on the other side and just fix the order in elements.rb?

@joeldrapper ping


Concurrent pushsync test fails

Uploading chunks to Bee node in series works fine, but concurrent upload of chunks fails.
Also, after attempting to upload chunks concurrently and switching back to uploading in series, that one fails, too. It becomes impossibile to upload a chunk.
Logs do not help much:
level=debug msg="bzz: write error: storage: invalid chunk, addr 13c8e84581163ea4ce505277f6ed4cc32b94f71a61e6d8e72eb3f3f147f647b7"
level=error msg="bzz: write error"
level=debug msg="bzz: write error: storage: invalid chunk, addr ad7556a3b378f23637e876f8b7d44d9d488ecd93fefa6e71c959e2348548e20d"
level=error msg="bzz: write error"
But goroutine dump shows that there is probably a goroutine leak.
It looks like a deadlock in the bmt, lines 129 and 133.
dump.txt
Following Beekeeper v0.2.3 command can be used for concurrent upload:
beekeeper check pushsync --namespace svetomir --node-count 5 --insecure-tls -u 5 -p 5 --concurrent

It looks like that TreePool.c is waiting on read at line 133 and holding the lock for other goroutines.
What is confusing is that storage: invalid chunk error is returned by the validator on Put for the address that is hashed by bmt itself in the same handler api.uploadHandler.


Critical error when running bin\prepare.bat

Report
Since practically nobody is watching the extensions repo here it is again:
https://github.com/3DStreamingToolkit/webrtc-extensions-3dstk/issues/4
Environment

OS Version: Pro (10.1.17134)

SDK Version: didn't get far enough to set this
oldest installed: 14393.795
latest installed: 17763.132

Visual Studio Version: 2017 (15.9.4)

Issues and Steps to Reproduce
running bin\prepare.bat fails to build the zsLib.Eventing tool compiler
repro:

clone repo including submodules as described in the readme.md
cd to the repo directory
run bin\prepare.bat

Expected Behavior
preparing should finish without errors
Actual Behavior
Target: all (Ortc and WebRtc)
Platform: all (x64, x86, arm and win32)
Log level: 2 (warning)

Running prepare script ...

Preparing webRTC and ORTC development environment ...
Preparing development environment for ARM, x64, x86 and win32 platforms ...
COPY ortc\xplatform\templates\gn\webrtcBUILD.gn webrtc\xplatform\webrtc\BUILD.gn
COPY ortc\xplatform\templates\gn\ortcBUILD.gn webrtc\xplatform\webrtc\ortc\BUILD.gn
COPY bin\runEventCompiler.py webrtc\xplatform\webrtc\ortc\runEventCompiler.py
COPY bin\runIDLCompiler.py webrtc\xplatform\webrtc\ortc\runIDLCompiler.py

Running WebRTC prepare script ...
=================================
Preparing WebRTC development environment for arm, x64, x86 and win32 platforms ...
        1 file(s) copied.
        1 file(s) copied.
        1 file(s) copied.
        1 file(s) copied.
In case pop-up window 'Git Credential Manager for Windows' appears after clang download, just click 'Cancel' button.
Updating Clang to 310694-2...
Creating directory D:\Repos\webrtc-extensions-3dstk\webrtc\xplatform\webrtc\third_party\llvm-build
Downloading prebuilt clang
Downloading https://commondatastorage.googleapis.com/chromium-browser-clang/Win/clang-310694-2.tgz .......... Done.
Creating directory D:\Repos\webrtc-extensions-3dstk\webrtc\xplatform\webrtc\third_party\llvm-build\Release+Asserts
clang 310694-2 unpacked
Copying C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\DIA SDK\bin\amd64\msdia140.dll to D:\Repos\webrtc-extensions-3dstk\webrtc\xplatform\webrtc\third_party\llvm-build\Release+Asserts\bin
0> Downloading buildtools\win\gn.exe...
Success!
Downloading 1 files took 34.944000 second(s)
0> Downloading buildtools\win\clang-format.exe...
Success!
Downloading 1 files took 7.302000 second(s)
Generating WebRTC projects for x64 platform ...
Generating WebRTC projects for x86 platform ...
Generating WebRTC projects for win32 platform ...
Generating WebRTC projects for win32 x64 platform ...

Success: WebRTC development environment is prepared.
=======   WebRTC prepare script summary   =======
=======   platform   =========   result   =======
            arm                 not run
            x64                 prepared
            x86                 prepared
            win32               prepared
=================================================

COPY ortc\windows\templates\libs\webrtc\webrtcForOrtc.vs2015.sln webrtc\xplatform\webrtc\webrtcForOrtc.vs2015.sln
COPY ortc\windows\templates\libs\webrtc\webrtcForOrtc.Win32.vs2015.sln webrtc\xplatform\webrtc\webrtcForOrtc.Win32.vs2015.sln

Running Curl prepare script ...
=================================
Preparing curl will take approximately 5 minutes ...
Junction created for include <<===>> download\curl-7.50.3\include
Junction created for current <<===>> download\curl-7.50.3
Building curl for x86
CPU arhitecture is x64
Selected compiler option is amd64_x86
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.9.4
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64_x86'

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Could Not Find D:\Repos\webrtc-extensions-3dstk\ortc\xplatform\curl\current\winbuild\LIBCURL_OBJS.inc
Could Not Find D:\Repos\webrtc-extensions-3dstk\ortc\xplatform\curl\current\winbuild\CURL_OBJS.inc

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Junction created for x86-release-dll <<===>> current\builds\libcurl-vc14-x86-release-dll-ipv6-sspi-winssl
Junction created for x86-debug-dll <<===>> current\builds\libcurl-vc14-x86-debug-dll-ipv6-sspi-winssl
Junction created for x86-release-static <<===>> current\builds\libcurl-vc14-x86-release-static-ipv6-sspi-winssl
Junction created for x86-debug-static <<===>> current\builds\libcurl-vc14-x86-debug-static-ipv6-sspi-winssl
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
Building curl for x64
CPU arhitecture is x64
Selected compiler option is amd64
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.9.4
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.16.27025.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Junction created for x64-release-dll <<===>> current\builds\libcurl-vc14-x64-release-dll-ipv6-sspi-winssl
Junction created for x64-debug-dll <<===>> current\builds\libcurl-vc14-x64-debug-dll-ipv6-sspi-winssl
Junction created for x64-release-static <<===>> current\builds\libcurl-vc14-x64-release-static-ipv6-sspi-winssl
Junction created for x64-debug-static <<===>> current\builds\libcurl-vc14-x64-debug-static-ipv6-sspi-winssl
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
        1 file(s) moved.
Curl is ready
Total execution time: 00:07:43 (463s total)

Running eventing preparation script ...
=================================
Platform: x64
Building eventing tool compiler ...
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.9.4
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64_x86'

CRITICAL ERROR: Building zsLib.Eventing.Tool.Compiler projects for x86 has failed

FAILURE: Eventing preparations has failed

Total execution time: 00:03:45 (225s total)```

I have been able to compile it number of times recently with SDK 17763 with following steps:

Set DEPOT_TOOLS_WIN_TOOLCHAIN to 0 as per https://chromium.googlesource.com/chromium/src/+/master/docs/windows_build_instructions.md
git clone --recursive git@bitbucket.org:gridrasterproduct/webrtc-extensions-3dstk-fork.git
cd webrtc-extensions-3dstk-fork
Make sure to remove any local Python. I was having problem with local and python version that is downloaded by Chromium.
Install http://strawberryperl.com/
Install debugging tools also after installing VS 2017 Windows SDK.
7.Opened the solution projects in webrtc-extensions-3dstk-fork\webrtc\windows\solutions using VS 2017 and retargetted them to 10.0.17663.0 .
bin\prepare.bat
Running bin\build3DSTKLibs.bat was giving bunch of errors about redefinition. The issue is a known issue with webrtc-uwp with latest SDK. It has been fixed with a single file change. Merged https://raw.githubusercontent.com/webrtc-uwp/webrtc-windows/Robin/m66-msidl/third_party/winuwp_compat/winuwp_compat_std.h to webrtc/windows/third_party/winuwp_compat/winuwp_compat_std.h.
With above changes, bin\build3DSTKLibs.bat build completed from VS 2017. Note that this took couple of hours to complete.

Today it failed for me also with same error as reported in this bug.


Implement the list command to support filters

Dependencies: #72
Refer to issue #70

NA anymore. Planned not to do it.


Cannot open the program

This is the command I run
Aokana2Extract.exe ./sprites.dat ./sprites
While this is the error I found
The application to execute does not exist: 'C:\Data\Download\Eroge\Aokana - EXTRA2\AokanaEXTRA2_Data\Aokana2 Extract.dll'.
I cannot open the program you released
My .NET version is 6.0, while you said ".NET 3.x.x RTE may required."
Maybe that's the problem?
For now I'm trying to compile the code myself using Visual Studio, and maybe I'll try changing my .NET version (if that's possible) next
Best regards

Well, compiling it myself do solve the problems, as there are quite a few things missing in your 1.0.0 release. Maybe all the compiled results from Visual Studio is required, at least I think so.

Here's the complete list of files I compiled using Visual Studio, while there's only the .exe in your release.
Hope this will help the others who want to use your program in the future.
Best regards

Well, compiling it myself do solve the problems, as there are quite a few things missing in your 1.0.0 release. Maybe all the compiled results from Visual Studio is required, at least I think so.

Here's the complete list of files I compiled using Visual Studio, while there's only the .exe in your release.
Hope this will help the others who want to use your program in the future.
Best regards

Thanks for your response, I will update release for this repo in the future;)

So how does the command work?