Rotary CLI

Thoughts about a CLI for rotary:

It would be nice to expose the main workflow as well as several of the key utilities built into rotary, so that the utilities can be run in a standalone way if desired (see #21 )
Example modules that could be available within rotary:

rotary workflow: complete QC, assembly, polishing, and annotation workflow

kind of like atlas run. I wonder if we can skip a separate rotary config step (to generate a config file) and can just provide all the details needed for the workflow as flags to this module. The workflow module would then create a snakemake-readable config and run the config. This would work well with the current model of rotary, where each rotary run is for a single sample (genome). Rotary could be easily run in a for loop or via GNU parallel with flags if a user wanted to analyze many samples at the same time...

rotary repair: fixes the ends of circular contigs
rotary rotate: rotates circular contigs (e.g., to the midpoint) - helpful for polishing steps
rotary align_start: finds the dnaA gene and rotates circular contigs to start there; for circular contigs without dnaA, rotate them so that no ORFs get interrupted by the contig end (like circlator fixstart)
rotary test: runs test code to make sure rotary is working

The rotary repair module should be easy, because it is already its own script. Code for rotary rotate is already inside the rotary repair script and could be made into a standalone script. Code for rotary align_start is currently part of the snakefile and might need to be moved into a separate Python script.

@leebergstrand

@jmtsuji I would like something like ATLAS INIT where we can set up a config file and a sample file etc. Would something like that work for you?

@jmtsuji I would like something like ATLAS INIT where we can set up a config file and a sample file etc. Would something like that work for you?

Still thinking about this. I feel like being able to run rotary in a single command (with no need for a separate init step) is probably simpler for new users. The init then run workflow is probably easier for more advanced users who want to run large batches of samples at one time.
Would there be any disadvantages to having a single run command (no init) and locking rotary to one sample at a time, but using GNU parallel to automate running a catalog of genomes?
We could still output the config file as one of the outputs of the run, and the CLI could include a --continue flag (like is available in SPAdes) so that users can use the config to re-start a failed run partway through.
What are your thoughts? Thanks.

@jmtsuji So I like doing the batch processing in Snakemake because it loads balances. Once you specify the proper number of CPUs and RAM for each rule, Snakemake will only use the required resources to apply that rule. For example, if you have one rule that needs four threads and another, that takes 8 (see: https://github.com/metagenome-atlas/atlas/blob/c7caea9c198c60f39d250ae35854ca5e0df96245/workflow/rules/binning.smk#L25). Many bioinformatics programs have diminishing returns if you specify too many threads. For example, HMMER plateaus its performance around eight threads (unless you run on a RAM disk). If you have more cores than the number of threads needed for a job and run multiple genomes simultaneously, the load balancer will slot jobs into processing holes. For example, it can assemble one genome while annotating another with HMMER. You don't get into situations where, for example, you are unzipping six genomes simultaneously on one thread each while you have 12 cores. If you used GNU parallel, you could run the risk of either the jobs destroying each other by taking up too much RAM or using a small amount of resources at once.

I am still thinking about this. I feel like being able to run rotary in a single command (with no need for a separate init step) is probably more straightforward for new users. The init then run workflow is probably easier for more advanced users who want to run large batches of samples simultaneously.

These things don't need to be mutually exclusive. You could have both. I'm thinking about doing the following:
rotary run --short_r1 blam_R1.fastq.gz --short_r2 blam_R2.fastq.gz --nano blam.fastq.gz --databases ./databases --out ./out_dir --config ./config.yml
So the run command would make an out_dir directory, then put the config.yml in that directory and make a  sample. tsv file with the paths to the input files and put that in the directory.
Removing the sample paths from the config and moving them to a separate file is essential from a separation of concerns (https://en.wikipedia.org/wiki/Separation_of_concerns) standpoint. That way, you can transfer the configs between machines or between lab groups or members without digging into them to rename the input file paths.
You could also still have:
rotary init --path/to/fastq_folder
This would make the  sample.tsv file upfront and add a generic config file.
You could just make the --short_r1,  --short_r2 ,  and --nano flags as optional. If they are not specified, then rotary looks for the  sample.tsv file and processes using that.

@jmtsuji What are your thoughts? Thanks.

@LeeBergstrand I like your proposed approach!

Agreed that the load balancing within snakemake is a big plus for being able to run multiple samples in the same run
I also agree with your proposal to separate the config and sample files
The CLI examples you gave are nice -- sounds like it will keep rotary intuitive for entry users (or users who only need to run 1 sample) while also exposing the ability to run multiple samples

Shall we go with this approach? Thanks.

Shall we go with this approach? Thanks. --> let's do this.


CAUpdateHandler test coverage

Closes #41
Unit tests for the CAUpdateHandler

Codecov Report

Merging #47 into master will increase coverage by 10.46%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master      #47       +/-   ##
===========================================
+ Coverage   80.52%   90.98%   +10.46%
===========================================
  Files          10       10
  Lines         344      344
  Branches       45       45
===========================================
+ Hits          277      313       +36
+ Misses         61       23       -38
- Partials        6        8        +2

Impacted Files
Coverage Δ

forwarder/update_handlers/create_update_handler.py
100.00% <0.00%> (+8.33%)
:arrow_up:

forwarder/update_handlers/ca_update_handler.py
82.53% <0.00%> (+53.96%)
:arrow_up:


CDN error in the Boostrap starter template

This CDN link does not load in the browser - the https://code.jquery.com site appears to be down.

Thank you for looking into this. Please advise - is this a temporary problem or should I use a Google CDN link instead?

It seems it works for me now.


Page control tests

[x] Go to page settings using Page > page settings, change and check if it works
[x] Switch to "Advanced Settings" from the modal, change and check if it works
[x] Check advanced settings through Page > Advanced Settings, change and check if it works
[x] Set the menu visibility using Page > Hide in navigation", check
[x] Unpublish the page by using Page > Publish/Unpublish page, check
[x] Delete the page by using Page > Delete page, check

Important: updates admin-style

LGTM overall


Adding TCU Debarred crawler

Very similar to https://github.com/opensanctions/opensanctions/pull/546. Just some minor changes on the URLs and entity types, which in this case can be either a company or a person.
This PR is related to the issue opensanctions/crawler_planning#18. I changed the name from unfit to debarred because I think it makes more sense in this case.
Here is an unofficial link explaining the dataset: https://suporte.linkana.com/pt-BR/articles/3136996-lista-de-licitantes-inidoneos

I branched off from br-tcu-disqualified to use the new clean_br_cnpj and clean_br_cpf functions from helper. That's why it has the commits from that PR too

Thank you!


Change default warning level for stream output

This should not be verbose by default
@Dominik-Vogel this may be why users have had the need to change this locally

Also pip pyvisa in env by default to not get annoying warning


Add URL doesn't work

I'm using this app via Deta. When I click the "Add URL" button, nothing appears. I can't add urls.

just touch/click settings button :')
On Sat., Mar. 25, 2023, 14:05 leojely @.***> wrote:

I'm using this app via Deta. When I click the "Add URL" button, nothing
appears. I can't add urls.
—
Reply to this email directly, view it on GitHub
https://github.com/xarzoa/upty/issues/2, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASTMSJYKVEZ7W6MIV2CVTHTW52U6ZANCNFSM6AAAAAAWHMYIGE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

…

It worked like this but the button on the home screen doesn't work :(


Fix benchmarks

Changes:

Fixed benchmarks, now they measure the maximum import throughput.
Fixed bug that caused high CPU usage.

:man_shrugging:


Use pip-api instead of importing pip

Fixes #924.
Also removes some (seemingly?) unnecessary @pytest.mark.skipif decorators that were preventing the relevant tests from being run.

Codecov Report

Merging #928 into develop will increase coverage by 0.13%.
The diff coverage is 80%.

@@             Coverage Diff             @@
##           develop     #928      +/-   ##
===========================================
+ Coverage    89.03%   89.17%   +0.13%
===========================================
  Files            8        8
  Lines         2417     2410       -7
  Branches       433      433
===========================================
- Hits          2152     2149       -3
+ Misses         178      174       -4
  Partials        87       87

Looks perfect, thank you so much!


Candidate List Display

See wiki here for more info.

Pushed some basic layout changes for displaying incumbent and challengers, lacking bill and questionnaire section.
https://github.com/ACTtaiwan/CongressionalGuide/commit/bdba099114fbbf8dc4c8a0c32119f581680a2b94

陳韻如 is the UX. Facebook: yunju.chen.927

Any ETA on completion?

Tung-tung is actively working on this now.

Merged Pull request for this issue: Questionnaire UI layout and functions #30


Update omniauth

Omniauth has several security issues. The 0.8 constraints rely on unpatched versions.
https://nvd.nist.gov/vuln/detail/CVE-2017-18076

Duplicate of #60


(((Leap Day + Year) + Year) + Year) + Year != Leap Day + 4 Years

https://www.actuarialopensource.org/actxps_experienceanalysis_2023_02_03.html#leap

No material differences likely for annual rate calculations because rarity of leap day. Differences are larger for monthly calculations as dates beyond the 28th are likely to get "stuck" at the 28th once passing through february.

https://github.com/JuliaActuary/ExperienceAnalysis.jl/pull/21


Possible values for parameters

Is there any documentation for possible keys/values for parameters?
For example:
Country:  which countries are available? What are their codes?
same for state // city // etc...

also i have noticed the same country being refered to by different codes, example:
Brazil // BR // br
if i look for groups within brazil, will i also get a return of the groups with BR?

When i try a different country from brazil it doesnt work. Tried many different countries. Whats up with that? It only allows me to search for countries in which ppl reside?


Restrict systemd units as much as possible

A number of good ideas in: http://0pointer.net/public/systemd-nluug-2014.pdf
Should be as simple as trying each mitigation and see which can be enabled without breaking anything.
Possibly more in the following presentation: http://ftp.nluug.nl/video/nluug/2014-11-20_nj14/zaal-2/5_Lennart_Poettering_-_Systemd.webm

The system daemon probably doesn't really need to run as root (which the client currently checks for -- needlessly, AFAICT). If the system daemon gets handed an open file descriptor to /dev/uhid, that's about all the privileges it needs (and handing on that FD can probably be done in the systemd unit).


Set "from" field in forgotten password email to "Take Your Meds" or similar

I've updated the DEFAULT_FROM_EMAIL email to<EMAIL_ADDRESS>But I can't find where to alter the displauyed "from" string, which is currently "support". @lamby ?

I've googled this for a while and cannot solve it myself. I found that settings.DEFAULT_FROM_EMAIL = 'Take Your Meds<EMAIL_ADDRESS>would display "Take Your Meds" in the "From"'s name field of an email, as I want, but we use {{ settings.DEFAULT_FROM_EMAIL }} in other ways so this won't work.
Could you help @lamby ?


error: package com.philipphecht does not exist

I installed it like this docs and run react-native run-android in terminal. And I got BUILD FAILED with this log in terminal:

:app:compileDebugJavaWithJavac
/Users/ghifari/docviewer/android/app/src/main/java/com/docviewer/MainApplication.java:15: error: package com.philipphecht does not exist
import com.philipphecht.RNReactNativeDocViewerPackage;
------------------------^
1 error
Incremental compilation of 1 classes completed in 0.442 secs.
:app:compileDebugJavaWithJavac FAILED

@Dani93380 thanks, that was nice solution. but I didn't use this package again, recommend use RNFB file stream ^^

@dopey2 Just wanted to say thanks for pointing us in the right direction.
I was experiencing this issue with Android as well after manually linking following the instructions on the main page (which seem to be outdated?).
> Task :app:compileDebugJavaWithJavac FAILED
/<redacted>/MainApplication.java:18: error: package com.phil
ipphecht does not exist
import com.philipphecht.RNDocViewerPackage;
                       ^
/<redacted>/MainApplication.java:43: error: cannot find symb
ol
            new RNDocViewerPackage()
                ^
  symbol: class RNDocViewerPackage
2 errors

Changing the package name in MainApplication.java like you suggested from:
import com.philipphecht.RNDocViewerPackage;

To:
import com.reactlibrary.RNReactNativeDocViewerPackage;

fixed one error, but left the remaining one:
> Task :app:compileDebugJavaWithJavac FAILED
/<redacted>/MainApplication.java:44: error: cannot find symbol
            new RNDocViewerPackage()
                ^
  symbol: class RNDocViewerPackage
1 error

I then changed
new RNDocViewerPackage()

To this instead:
new RNReactNativeDocViewerPackage()

Now it builds just fine on Android. I'm not sure about the long term implications of these changes though as I'm not familiar with native Android development.
My project details (react-native info):
  React Native Environment Info:
    System:
      OS: macOS 10.14.1
      CPU: x64 Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
      Memory: 60.31 MB / 8.00 GB
      Shell: 3.2.57 - /bin/bash
    Binaries:
      Node: 8.11.4 - /usr/local/bin/node
      Yarn: 1.9.4 - /usr/local/bin/yarn
      npm: 4.6.1 - /usr/local/bin/npm
    SDKs:
      iOS SDK:
        Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
      Android SDK:
        Build Tools: 23.0.1, 27.0.3, 28.0.2, 28.0.3
        API Levels: 21, 23, 25, 27, 28
    IDEs:
      Android Studio: 3.1 AI-173.4907809
      Xcode: 10.1/10B61 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.5.0 => 16.5.0
      react-native: 0.57 => 0.57.0
    npmGlobalPackages:
      react-native-cli: 2.0.1
      react-native-git-upgrade: 0.2.7

I have tried all the things mentioned above. It did not work for me. Any work around please?


Update README.md

Fixed link hrefs and simplified brew command
Releases was previously linking to -> https://github.com/argon/mas/blob/master/ghreleases (a 404)

Thanks


A couple of minor changes to make code compatible with current rust nightly

Trying to build blink_stmf3f4 I came across a couple of minor tweaks to get the code to compile with the current nightly "rustc 1.5.0-nightly (81b3b27cf 2015-10-11)"

LGTM

Thanks, merged.


Upgrade staxmapper to 1.2.0.Beta1

Windows Build 974 is now running using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1

Linux Build 1291 is now running using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1

Core - Full Integration Build 552 is now running using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1

Windows Build 974 outcome was SUCCESS using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1
Summary: Tests passed: 3047, ignored: 68 Build time: 0:19:30

Linux Build 1291 outcome was SUCCESS using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1
Summary: Tests passed: 3047, ignored: 68 Build time: 0:19:02

Core - Full Integration Build 552 outcome was FAILURE using a merge of 6cbc7a061643aee6b7a54e0e1e8d467eb07b80a1
Summary: Tests failed: 1 (1 new), passed: 2826, ignored: 415, muted: 1 Build time: 0:49:26
Build problems:
Failed tests detected
Failed tests
org.jboss.as.test.integration.ws.wsse.signencrypt.EJBSignEncryptMultipleClientsTestCase.encryptedAndSignedRequestFromAlice: javax.xml.ws.WebServiceException: Could not send Message.
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:150)


Joey branch

@ebeshero Hello, I added two example code documents from last semester!

@jbg5721 I've merged in your PR and deleted your branch on the remote repo. You should delete this branch on your local repo now. For the next homework assignment you'll create a new branch with a new purpose.


TypeError occurring

So, I just finished with the code for the first video. I have made a lot of changes in the code, so my code may seem to be different than yours. The following error is raised:
Traceback (most recent call last):
  File "main.py", line 135, in <module>
    tokens, error = lexer.make_tokens()
  File "main.py", line 65, in make_tokens
    tokens.append(self.make_number())
  File "main.py", line 88, in make_number
    self.advance()
  File "main.py", line 54, in advance
    if self.character in " \t":
TypeError: 'in <string>' requires string as left operand, not NoneType

And my code is the following:
operators = {
    "+" : "ADDITION",
    "-" : "SUBTRACTION",
    "*" : "MULTIPLICATION",
    "/" : "DIVISION",
    "(" : "PARENTHESIS_LEFT",
    ")" : "PARENTHESIS_RIGHT"
}

class Exception:
    def __init__(self, name, details, inp):
        self.name = name + "Error"
        self.details = details.format(inp=inp)

    def __repr__(self):
        return f"{self.name}: {self.details}"

class InvalidCharacter(Exception):
    def __init__(self, character):
        super().__init__("InvalidCharacter", "\"{inp}\" is not a valid number, integer or decimal", character)

class Token:
    def __init__(self, type_of, value):
        self.type_of = type_of
        self.value = value

    def __repr__(self):
        if (self.value != "") and (self.type_of != ""):
            return "{type_of} :: {value}".format(
                type_of = self.type_of,
                value = self.value
            )

        else:
            return self.type_of

class Lexer:
    def __init__(self, text):
        self.text = text
        self.position = -1
        self.character = None
        self.advance()

    def advance(self):
        self.position += 1

        if self.position < len(self.text):
            self.character = self.text[self.position]
        else:
            self.character = None

        if self.character in " \t":
            self.advance()

    def make_tokens(self):
        tokens = []

        while self.character != None:
            if self.character in "+-*/()":
                tokens.append(Token("OPERATOR", operators[self.character]))
                self.advance()
            elif self.character in "0123456789":
                tokens.append(self.make_number())
                self.advance()
            else:
                self.advance()
                return ([], InvalidCharacter(self.character))

        return (tokens, None)

    def make_number(self):
        num_string = ""
        dot_count = 0

        while self.character != None:
            if self.character in "0123456789.":
                if self.character == ".":
                    if dot_count > 0:
                        break

                    dot_count += 1
                    num_string += "."
                else:
                    num_string += self.character

                self.advance()
            elif self.character in " \t":
                self.advance()
            self.advance()

        if dot_count == 0:
            return Token("INTEGER", int(num_string))
        elif dot_count == 1:
            return Token("DECIMAL", float(num_string))
        else:
            return "Something went very wrong. Here is your number: " + num_string

def zero_pad(n, width):
    out = str(n)

    while len(out) < width:
        out = "0" + out

    return out

def array_pad(arr):
    out = ""

    if not(arr):
        return None

    out += "["

    for el in arr:
        out += "\n\t" + el + ","

    out += "\n]"

    return out

n = 1
while True:
    inp = input(f"[{zero_pad(n, 3)}] >>> ")
    n += 1

    lexer = Lexer(inp)

    tokens, error = lexer.make_tokens()

    if error:
        print(repr(error))
    else:
        print(array_pad(tokens))

I know that I probably appear as some kind of snob to you, but I would really appreciate it anyone bothered to help me out.

CODE UPDATE: I managed to fix the errors, and now everything seems to working fine. But the lexer seems to be only registering the first token.

Hi @subtra3t, i can get a fix for you
It seems, that space and tab character need check in Lexer.make_tokens.
If you wanna check space and tab character in advance method you should check for None. Thats because advance becomes recursive.
For example:
"1 + 2"
Characters: '1', ' ', '+', ' ', '2'
Parse manualy:

character = '1' -> its number, than make_number
in make_number we are use advance function that might be recursive
after '1' character -> ' ' character
And in this situation you just skip it in advance method because advance call advance one more time and next character becomes '+', not ' '

This is fix code
operators = {
    "+" : "ADDITION",
    "-" : "SUBTRACTION",
    "*" : "MULTIPLICATION",
    "/" : "DIVISION",
    "(" : "PARENTHESIS_LEFT",
    ")" : "PARENTHESIS_RIGHT"
}

class Exception:
    def __init__(self, name, details, inp):
        self.name = name + "Error"
        self.details = details.format(inp=inp)

    def __repr__(self):
        return f"{self.name}: {self.details}"

class InvalidCharacter(Exception):
    def __init__(self, character):
        super().__init__("InvalidCharacter", "\"{inp}\" is not a valid number, integer or decimal", character)

class Token:
    def __init__(self, type_of, value):
        self.type_of = type_of
        self.value = value

    def __repr__(self):
        if (self.value != "") and (self.type_of != ""):
            return "{type_of} :: {value}".format(
                type_of = self.type_of,
                value = self.value
            )

        else:
            return self.type_of

    def __str__(self):
        return self.__repr__()

class Lexer:
    def __init__(self, text):
        self.text = text
        self.position = -1
        self.character = None
        self.advance()

    def advance(self):
        self.position += 1

        if self.position < len(self.text):
            self.character = self.text[self.position]
        else:
            self.character = None

        if self.character != None and self.character in " \t":
            self.advance()

    def make_tokens(self):
        tokens = []

        while self.character != None:
            if self.character in "+-*/()":
                tokens.append(Token("OPERATOR", operators[self.character]))
                self.advance()
            elif self.character in "0123456789":
                tokens.append(self.make_number())
            else:
                self.advance()
                return ([], InvalidCharacter(self.character))

        return (tokens, None)

    def make_number(self):
        num_string = ""
        dot_count = 0

        while self.character != None and self.character in "0123456789.":
            if self.character == ".":
                if dot_count > 0:
                    break

                dot_count += 1
                num_string += "."
            else:
                num_string += self.character

            self.advance()

        if dot_count == 0:
            return Token("INTEGER", int(num_string))
        elif dot_count == 1:
            return Token("DECIMAL", float(num_string))
        else:
            return "Something went very wrong. Here is your number: " + num_string

def zero_pad(n, width):
    out = str(n)

    while len(out) < width:
        out = "0" + out

    return out

def array_pad(arr):
    if not(arr):
        return None

    arr_str = ',\n\t'.join(map(str, arr))
    out = f"[\n\t{arr_str}\n]"

    return out

n = 1
while True:
    inp = input(f"[{zero_pad(n, 3)}] >>> ")
    n += 1

    lexer = Lexer(inp)

    tokens, error = lexer.make_tokens()

    if error:
        print(repr(error))
    else:
        print(array_pad(tokens))

I made some improve code for array_pad, but its not necessary

@Roshiago Thanks!


Fix Channel usage in mon_data_space.py

This fix allows mon_data_space.py to use the actual channel numbers in the dataset coordinates.  Yaml files using mon_data_space.py should now only use the actual channel numbers in the channels specification.
Testing has been done using abi_g16 data (valid chans 7-16), and hirs4_metop-a data (valid chans 1-19).
Dependencies
None
Impact
None
Closes #129

Yeah it's some error when installing dependencies... This error seems irrelevant to the PR but we probably shouldn't merge until the CI is fixed. I'm in Madison this week, not sure how much I'll be able to debug the CI.


wrap error logging to improve consistency

Couple comments...
also, I'm not sure what EasyResource does for someone vs the standard resweave resource. The name doesn't tell me much, and I don't see docs; might be a place for improvements?

Docs are there (see the adoc files); the main thing is you don't register your handler functions, you just implement the ones you need.


Services: first build: abs added

Linter check found the following problems:
The following problems have been found:
WARNING: /tmp/abs_efw2d0ij4l/clone/recipe/meta.yaml:11: avoid_noarch: noarch: python packages should be avoided
WARNING: /tmp/abs_efw2d0ij4l/clone/recipe/meta.yaml:48: missing_license_url: The recipe is missing a license_url
WARNING: /tmp/abs_efw2d0ij4l/clone/recipe/meta.yaml:48: missing_doc_source_url: The recipe is missing a doc_source_url
ERROR: /tmp/abs_efw2d0ij4l/clone/recipe/meta.yaml:48: missing_dev_url: The recipe is missing a dev_url
WARNING: /tmp/abs_efw2d0ij4l/clone/recipe/meta.yaml:48: missing_description: The recipe is missing a description
Errors were found


[Feature Request] A) Import/Export Weights/Params - and B) Time-dependent functions as a parameter

Hi, I have two requests,
1: Is it possible to import/export the weights as a CSV file or something similar so we can share parameters
2: Is it possible to include an input function for a time-dependent perturbation as a parameter. Maybe just a simple function which defaults to y(t) = x. but allows us to add in our own perturbations eg y(t) = sin(t) to perturb the potential as a function of time? Where t is whatever time unit is used for each 'step' of course.

the C++ version already have an import/export, I assume you're talking about the js version ?

2: Is it possible to include an input function for a time-dependent perturbation as a parameter. Maybe just a simple function which defaults to y(t) = x. but allows us to add in our own perturbations eg y(t) = sin(t) to perturb the potential as a function of time? Where t is whatever time unit is used for each 'step' of course.

What exactly do you mean by that? Please be more explicit.

@ker2x Yes, should be. I have been using https://hunar4321.github.io/particle-life/particle_life.html#91651088029.
@KhadrasWellun I would assume that each particle, n has a attraction/repulsion term for each other particle in the simulation let's call these terms n_x (x = 1, 2, 3... n).
For each time step, the position of each particle relative to its nearest neighbours change according to the magnitudes of n_x.
So, there add in a new integer variable, t_angle, which will be defined as the number of time steps for a single revolution (ie 2pi).
Then, add in another variable which is the equation input that is a function of t_angle, lets call this eq_in(t_angle).
Create a lookup table for eq_lookup = [t_angle, eq_in] for all values of t_angle.
Now let n_x * eq_loopup[n], n = 1, 2, 3... t_angle(max) and loop back to n =1 when n = t_angle(max).
This way, the attractive and repulsive forces can be multiplied by a time-dependent variable, e.g. a sine wave term or other more complex wavefunctions. The equation can be input through the GUI.


Small Design Improvements no. 4

Fixes #772, #763
See commits for other changes
Flipped message & datetime

Removed buttons, added message for empty description

Thanks, quite nice! I was unsure about the change regarding the ConversationMessage, but it seems fine now.
Some other bits:

If I set max slots to null like this, it shows me no pickup slot at all:

The problem likely existed before, as max slots isn't required for a pickup on the server. Maybe we can show a "+∞ " there?

the profile page looks better now, but the email still breaks in the middle:

Would be nicer if it actually was on top of the map. and clickable with mailto ;)

Regarding Pickups: Is there any specific reason to say its unlimited then? I think if someone sets it to 0, it probably needs further explanation in the comment field (if you need to be invited somewhere else, if its some other event (party, cooking etc), if an unlimited amount of people can pick up etc.), wherefore I like it better the way it is now since it seems to be "more flexible" than having an "unlimited people can join" message.
Mails: Ahh, now I got what you meant. I like the map in the top right corner though, so I removed the arrow, made the text have ellipsis on overflow, made the map smaller on smaller screens and added mailto. I think it looks better not to have it on top, but I am also willing to change it again if you like the other version better.

Is there any specific reason to say its unlimited then?

That's how the backend behaves; if you set maxCollectors: null, it doesn't enforce a maximum.

I think if someone sets it to 0, it probably needs further explanation in the comment field (if you need to be invited somewhere else, if its some other event (party, cooking etc), if an unlimited amount of people can pick up etc.)

It's not 0, it's null.
This feature is never been requested or used by anyone, so we could also change the backend to require maxCollectors to be non-null. What do you think, should I do this backend change to simplify the frontend in this regard? Or could this be a helpful feature to some groups?

I like the map in the top right corner though, so I removed the arrow, made the text have ellipsis on overflow, made the map smaller on smaller screens and added mailto.

Nice solution! 🏅

Ahhh, sorry I misunderstood your comment before. I don't think it's very obvious that it's an unlimited amount of people allowed if there is nothing standing in there. Maybe some sort of Radio-Button would be good ("No People", "Unlimited no people", "Slider + field")?
But for now, until there is a usecase for unlimited people, I would leave the backend and just add boxes to pickups with maxSlots = null. Then it's just a secret that it's unlimited when you leave the input field empty ;)

-> Added (almost) unlimited amount of boxes and +∞ sign
-> Added "unlimited placeholder" for input field


Build fails in Unity and VS on Mac

After cloning with LFS I attempt to build master in Unity 2018.3.0f2 and receive the following:
CheckConsistency: GameObject does not reference component Animator. Fixing.
When I attempt to build master in VS I receive the following:
TargetFieldOfView.cs(53,53): Error CS0246: The type or namespace name 'ParticleRenderer' could not be found (are you missing a using directive or an assembly reference?) (CS0246) (Assembly-CSharp-firstpass)
Im building on OSX Mojave 10.14.2

same pb


fix broken dependsOn functionality

This will fix javascript error that prevents dependsOn functionality on the latest Laravel Nova version (see attached video)
Example to reproduce
Boolean::make('toggle'),
SimpleRepeatable::make('repeater', [
    // Some fields
])->dependsOn('toggle', function (SimpleRepeatable $field, NovaRequest $request, FormData $formData) {
    $field->show($formData->test);
}),

https://github.com/outl1ne/nova-simple-repeatable/assets/6439071/a3b07d37-f412-45a4-9d5b-78b8d0fc7aa8

I have the same problem. Can you @KasparRosin merge this fix?

@miagg Bro, can you check? setValue is not working

Maybe slightly off topic, but can dependsOn function with inner fields? Like this:
SimpleRepeatable::make('Repeat this', 'products', [
    Multiselect::make('Products')->asyncResource(Product::class)->singleSelect(),
    Text::make('Unit')->dependsOn('products', function (BelongsTo $field, NovaRequest $request, FormData $formData) {
        ...
    }),
    ...


opt(agg): reuse existing count(*) while generating stream plan

Is this already fixed by https://github.com/risingwavelabs/risingwave/pull/8200?

Is this now fixed by https://github.com/risingwavelabs/risingwave/pull/8200?

No, the fix will be different from #8200. Will do this today😄

Where is the performance improvement for reference?

Where is the performance improvement for reference? I guess anecdotal result is here: #7351 (comment)

Didn't do benchmark on this PR actually, cuz I think the performance increase is supposed to be minor (since it just remove one low-overhead agg call in some cases), a wild guess may be around 10% for nexmark q15/16/17? Anyway, I can do some bench later if it is necessary.😄

Yes, I though I saw a graph about it showing throughput increase in the compute meeting but I couldn't find it after hunting a bit.

Yes, I though I saw a graph about it showing throughput increase in the compute meeting but I couldn't find it after hunting a bit.

Oh it was #8100


projects are not locked to their commit hash

🐛 Bug Report
readme claims that metarepos are reproducible

give every engineer on your team the same project setup, regardless of where it's cloned

but the git urls in .meta are missing the commit hash
so when upstream changes, a new clone is different
Expected behavior
git urls should have the commit hash as url fragment id
{
  "projects": {
    "repos/meta": "https://github.com/mateodelnorte/meta#1b727d56b7f09d3f27788ac02346f184622d36de"
  }
}

git stores ...
the path + url in .gitmodules
the commit in .git/modules/repos/meta/refs/heads/master
the branch in .git/modules/repos/meta/config

No. The point of the tool is ensuring that users can get up to date via
‘meta git pull origin main’. You would not store the git hash for the same
reason you wouldn’t checkout a single git repo by its git hash.
On Sat, Nov 26, 2022 at 1:14 PM milahu @.***> wrote:

🐛 Bug Report
readme claims that metarepos are reproducible
give every engineer on your team the same project setup, regardless of
where it's cloned
but the git urls in .meta are missing the commit hash
so when upstream changes, a new clone is different
Expected behavior
git urls should have the commit hash as url fragment id
{
"projects": {
"repos/meta": "https://github.com/mateodelnorte/meta#1b727d56b7f09d3f27788ac02346f184622d36de"

}
}
git stores ...
the path + url in .gitmodules
the commit in .git/modules/repos/meta/refs/heads/master
the branch in .git/modules/repos/meta/config
—
Reply to this email directly, view it on GitHub
https://github.com/mateodelnorte/meta/issues/310, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEHOX2NSVLCUIRBRVSKNILWKJOPFANCNFSM6AAAAAASMECYWU
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

you wouldn’t checkout a single git repo by its git hash

but thats what i want ...
"reproducible build" means locking sources to exact versions

I think you misunderstand the purpose of this tool. meta is not intended to be used in build processes. It is intended to be used in development processes. If you are building a graph of software using meta, you are using it wrong.
meta exists to allow teams of engineers to reproduceably install and track development of many repositories of software, together.
If you want to build packages together, you may want something like lerna. And you can easily have lerna packages as child repos within your meta repos.


feat: ensure txns in snap state have the same status and timestamp as…

… that of Voyager

The improvement we made here is to always treat the txns from the Voyager as the source of truth and update the same txns found in the snap state with the same status and timestamp as that of Voyager.


Problem with isAllowed callback

I have a problem with isAllowed callback, the plugin doesn't give me the proper target element.

Yes there is a bug. Can you use hint.parents('li').first() instead?

Ok, I'll try in that way and I'll let you know if it's working for me. I think you shouldn't remove target param, it can be useful to have it as a prepared jQuery object, not to target it always via hint.parents...

@camohub I tried the solution you wrote above and it's working. Tnx! :+1:

Fixed in v1.1.1


When already in a map view, clicking "Publish" pompted me to save my map

This one will be hard to repro, but basically when I was trying to show the direct and embed links for a multi-layer map, I clicked "Publish" and the screen that normally shows up when adding a 2nd layer to a dataset's map view.
@jatorre was in the audience and may be able to explain better.

From what you describe this check that the vis model represents a map must have returned false and thus entered the else-clause to "create the vis (map) first".
I have my primary suspects, when I migrated the old code I continued using the existing way of handling this, which does a bunch of mutations locally (updating model(s), change browser URL etc.).
IMHO we would better of removing this complexity and simply redirect the user to the new created vis URL (just like when you open a vis from the dashboard) to avoid this kind of issues in the future, and remove some code in the process. @javisantana what is your opinion on this?
Btw, thx for reporting, and I understand that this bug might not be the easiest to reproduce, but if it can't be reproduced consistently (i.e. have a series of steps-to-reproduce) at least try to give as much info as possible (dataset(s) used, what modifications were done up to the point etc.), otherwise it will be very hard for us to find and know that we actually fixed the issue.

This is a bug already sorted here -> https://github.com/CartoDB/cartodb/issues/5563


screen share size is not the correct dimension with webcam

When the recording is contained on the webcam with screen sharing, parts of the screen sharing video are truncated so that the screen share size is not the correct dimension.

Hi. Thanks for using bbb-video-download. Can you provide more specific description of your problem? Like screenshots of actual output vs expected output (from bbb player)? Thanks.

.
.
The screen-sharing video is not the right dimensions, there is a cut-out part of the width dimensions.

Which version are you using? Does the video contain only screenshare and webcam?

i used version 1.1.3 ,the video contain only screenshare and webcam

Well. Please update to latest v1.2.1

Thank you so much, the problem has been solved. ♥


[WFLY-15405][WFLY-18852] AMQP Connector for Reactive Messaging follow-up

Follow-up to https://github.com/wildfly/wildfly/pull/16281. Those commits are also included in here, so the last three ones are the relevant ones.
https://issues.redhat.com/browse/WFLY-15405
https://issues.redhat.com/browse/WFLY-18852
Note that for the WFLY-18852 commit, I have mainly focussed on trimming the  from galleon-pack/galleon-shared/pom.xml when those already exist in boms/common-expansion/pom.xml. Additionally, I moved some of those exclusions to the bom for the subsystems I am most familiar with.
I originally tried to have no exclusions in  galleon-pack/galleon-shared/pom.xml and have them all managed by the BOM, but that gave compile errors, so I went with the approach outlined above. If it needs further cleaning up, I think that should be another Jira, possibly one for each subsystem.

Thanks @kabir


Issue php laravel

Laravel version 6, 7 missing. Let update it

It is actually missing in the upstream project, just fyi:
https://github.com/freeCodeCamp/devdocs/issues/1145


Warning on maximum table/field caption length

Describe the bug
I think that AL Language is missing a warning when inserting a table/field caption.
Starting from the tables the "Table Metadata".Caption is Text[80] and AllObjWithCaption."Object Caption" is Text[249]
Furthermore the output of "Table Metadata".Caption is not limited to 80 characters.
To Reproduce
I attach a sample extension to reproduce the issue.
CaptionBehavior.zip
Running the Action that I created in page "EOSSample Table" we can see the caption is different based on the table that we are getting it from.

And running the table editing the URL to ?table=50100 we can see that the Caption is truncated.

But when we try to run the table "Table Metadata" the caption is not truncated, ignoring the limit of 80 characters.

ID
Name
Caption
DataPerCompany
LookupPageID
DrillDownPageId
DataCaptionFields
PasteIsValid
LinkedObject
DataIsExternal
TableType
ExternalName
ObsoleteState
ObsoleteReason
DataClassification
ReplicateData
CompressionType
System ID
Created At
Created By
Modified At
Modified By

50100
EOSSample table
CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____
Yes
0
0

Yes
No
No
Normal

No

ToBeClassified
Yes
Unspecified
{00000000-0000-0000-0000-000000000000}
{00000000-0000-0000-0000-000000000000}
{00000000-0000-0000-0000-000000000000}

Closing the page it returns the error:

The behavior is stranger on fields because on the page all the characters are exported.
I'm can't attach a screenshot, but I post the html produced in a list page:
<a draggable="false" href="#" role="button" class="thm-cont-c5-font-size thm-cont-c5-font-stack thm-cont-c5-color--medflat" id="column_header_16" data-sorting-column-link="true" title="Sort on 'CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____'" data-tabbable="true" data-prev-tabindex="-1" tabindex="0" aria-label="CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____, sorted in Ascending order">CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____CaptionOf300Char____

In a card page:

The get of the caption from the "Fields" table return the Caption truncated

Same things happen with xliff.
Expected behavior
I expect a warning when inserting a caption longer than 80 characters informing the developer that it could cause some kinds of problems.
5. Versions:

AL Language:
Name: AL Language
Id: ms-dynamics-smb.al
Description: AL development tools for Dynamics 365 Business Central
Version: 7.0.361799
Publisher: Microsoft
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=ms-dynamics-smb.al

Business Central:
Version: W1 17.1 (Platform 17.0.18204.18738 + Application 17.1.18256.18792)

Hi! Please take a minute to read the guidelines for this repository https://github.com/microsoft/AL and our collection of frequently asked questions https://github.com/Microsoft/AL/wiki/frequently-Asked-Questions .
As this repository is only for issues related to the AL compiler in latest developer preview environment for Dynamics 365 Business Central. We suggest that you open a support case or file a bug in Collaborate, to ensure that all Business Central users benefit from your catch as soon as possible.
To open a support case, you can:

Open a support request to CSS through the PartnerSource portal
Contact your Service Account Manager (SAM) in your local subsidiary to understand what is included in your contract as of support incident and PAH (Partner Advisory Hours). Your SAM might also direct you "step by step" how to open a support request or how to get credentials, if this is the first time for you or your company

If you file the bug in Collaborate, remember to include steps to reproduce the issue, and the Business Central build number and country version you're using.


python311Packages.meraki: 1.36.0 -> 1.37.3

Changelog: https://github.com/meraki/dashboard-api-python/releases/tag/1.37.3
Description of changes

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.

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

6 packages built:

meraki-cli
meraki-cli.dist
python310Packages.meraki
python310Packages.meraki.dist
python311Packages.meraki
python311Packages.meraki.dist


Add mappings to/from intermediate objects for NoSQL support

This is a draft solution for supporting NoSQL databases. It uses intermediary objects (currently called "Resources", but open to better names) to simplify a transformation to/from JSON. The intermediary objects support full serialization to JSON with the use of the OAuth2AuthorizationServerJackson2Module. Supports the following:

Handles iterating/mapping supported token types, removing the need for applications to do this
Converts enumerated types to/from strings with support for "custom" types
Converts authorities to/from strings
Supports custom settings values

Issue gh-558

Hello, there is no normal merging

Closing for now. May re-open when we revisit this.


Fix act warning in useAsync tests

Description

Type of change

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

Checklist

[x] Read the Contributing Guide
[x] Perform a code self-review
[x] Comment the code, particularly in hard-to-understand areas
[x] Add documentation
[x] Add hook's story at Storybook
[x] Cover changes with tests
[x] Ensure the test suite passes (yarn test)
[x] Provide 100% tests coverage
[x] Make sure code lints (yarn lint). Fix it with yarn lint:fix in case of failure.
[x] Make sure types are fine (yarn lint:types).

:tada: This PR is included in version 13.16.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Handle Problems

Hey! I just started experiencing some problems with handles on my yaks that I would assume can be attributed to a recent update that yodel received. I added a handle earlier in the day and now whether I press on or off on the new on/off handle toggle, I still get a handle. Every time I yak then, I have to turn the handle on, delete it, turn it off, and then post the yak. Thanks!

I probably should've tested the handle feature again after I changed the toggle. Grr.
I'll look into it tomorrow.

I just pushed another update, version <IP_ADDRESS>, to fix this. It should be available on the Store in the next few hours. Thanks for reporting this!


Add support for stroke color/width

...to differentiate from underlying content.
Example:

Solved it by using an oval shape drawable as ImageView background with 1dp padding.


Release an 0.29 with #1245 included

Description
Hi, it'd be great to get a release of tendermint-rs with #1245 included. Its exclusion from the tendermint-rs 0.34 backport regressed our debug output, causing a lot of debug spam for the last few months, and we've been hoping to avoid having to either rewrite all of our debug output or re-fork the dependency.
Definition of "done"
A version of tendermint-rs with #1245 included is released and propagated through the rest of Informal's dep tree (particularly ibc-rs).

Hey @mzabaluev, we're wondering if we could maybe cut this 0.29 release ahead of #1193 so that we can move forward with having ed25519-consensus (see #1245) so that this doesn't delay too much work on our side. I'm happy to cut the release myself, @thanethomson has granted me push rights on the repo, because I know y'all busy with comet

maybe cut this 0.29 release ahead of https://github.com/informalsystems/tendermint-rs/pull/1193

@romac @mzabaluev what do you think? Seems very reasonable to cut 0.29 (without 1193), and then do another release after we're done with #1193 and whatever else will be necessary.

maybe cut this 0.29 release ahead of #1193

@romac @mzabaluev what do you think? Seems very reasonable to cut 0.29 (without 1193), and then do another release after we're done with #1193 and whatever else will be necessary.

Agreed.


Private profile can redirect for instagram app

When a user login with a private profile the api redirect for a instagram app LOL.

There was an issue where after clicking on the Instagram's "Log in" button, the screen would stuck on infinite loading bar or in some rare cases (your experience) it would redirect to another links.
It is fixed in the new version.
It was nothing specific with the private profiles, it just happened that you experienced it that way.

There was an issue where after clicking on the Instagram's "Log in" button, the screen would stuck on infinite loading bar or in some rare cases (your experience) it would redirect to another links.
It is fixed in the new version.
It was nothing specific with the private profiles, it just happened that you experienced it that way.

Yeah, i almost open a new issue talking about 'stuck on infinite loading bar' because this happens alot now, but if you is working on for fixing that i don't need to open another issues anomore. and yeah this thing when users loggin with private profiles they are redirect to instagram app! but i will check if this bug still happens only with me. thanks for reply! happy new years brother!.

The new version (1.1.1) is live. Remember, you need to migrate to AndroidX if you are not already using it.

@nikolajakshic I migrate to AndroidX and everything is fine =D. awesome. thanks for your support again.


Update homebrew formula with latest changes

Make a PR to the homebrew-core. This PR would:

add fish completion
stop installing utils.bash file

Fixed in https://github.com/Homebrew/homebrew-core/pull/25972


render_cms_template doesn't support views & layouts sharing data via instance variables

render_cms_template (and maybe render_cms_page?) doesn't support layouts & views sharing data via instance variables because it renders blocks & content using render_to_string which can read instance variables, but changes made to instance variables are not preserved.
In my case, I'm using the gretel gem which uses calls to breadcrumb in the view, then a call to breadcrumbs in the layout to render the breadcrumbs. It does this through an @_gretel_renderer instance variable. This works fine using standard rails render layout: 'some-layout', but not render cms_layout: 'some-layout'.

Rendering cms_template doesn't work as a regular template as content construction doesn't happen on the view layer. You need to access that @gretel variable in a {{cms:helper}} or {{cms:partial}}. How do you have it set-up?

@GBH Thanks for your response and for all your work on CMS!
We had one Controller method that was performing error handling and calling render cms_template: :some_template, where :some_template had our main app layout set in its "App Layout" field (and our app layout is what contains the call to breadcrumbs). So, it wasn't getting called through {{cms:helper}} or {{cms:partial}} in this particular case. I switched it to render layout: :our_app_layout and to bypass CMS and just render our app layout directly, which is fine since it was really just an error handler.
Most of our pages get handled by CMS (with most of the actual views being included via {{cms:partial}}) and work fine with Gretel. So, I have a workaround, but if there's a better way to handle this I'm all ears.

I think when you're rendering template like that you're not passing instance variables to it. Method signature is like this: def render(options = {}, locals = {}, &block). So you should be able to pass instance variables explicitly.
So you can try: render({cms_layout: "some_layout"}, {gretel: "something"})


Permissive access icon

Now permissive access icon on map looks like unknown access icon.

Was this updated or is this still a bug?

@ttomasz no :(

I don't know what access=permissive means and what should the icon look like. I made PR #111 that shows what should be changed to add separate icon. If someone wants to continue working on that then fell free to do so.

Definition of "access=permissive" on OSM Wiki is: "An object /AED/, is open for general public use, but access is not protected by law. An owner of the object, or way, may revoke access without following a legal process."


Add .gitattributes for GitHub file highlighting

Render files on GitHub using the same Red linguist grammar as used in Markdown files

Awesome! I'm merging it! 😄


Xiaomi ants support

Hi. May i request rtspserver for xiaomi yi ants? Or maybe you can teach me, which steps i must do to make it work for xiaomi yi ants?
I've tried to compile the live555 sample program and run the testH264VideoStreamer in linux. And it can be shown.
But when i compile it for arm and run it in my xiaomi yi ants, the tinycam failed to load it.  Please help me with this problem.

Hi,
I do not understand what is you problem, investigating needs problably a clearer description and logs.
Best Regards,
Michel.


Fixed silently service fail

Pull Request Test Coverage Report for Build 293158507

0 of 0   changed or added relevant lines in 0 files are covered.
8 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.02%) to 58.193%

Files with Coverage Reduction
New Missed Lines
%

pkg/integrations/v4/logs/cfg_watcher.go
4
67.5%

pkg/integrations/v4/logs/logs/cfg_watcher.go
4
67.5%

Totals

Change from base Build 289211948:
-0.02%

Covered Lines:
10988

Relevant Lines:
18882

💛  - Coveralls


Thoughts on using SQLitePCL.raw

I couldn't find any info in the issues or wiki, but has there been discussion of replacing the interop layer with https://github.com/ericsink/SQLitePCL.raw?

I think you could write an ISQLitePlatform implementation that used it.
I don't have much time for this project any more so I don't think I will work on it.

Hello @oysteinkrog
Separate from the discussion about a new iterop layer, which might be a lot of work with little benefit, it sounds like you might have limited time now to dedicate to this project in general.
If that is the case, the SQLCipher team from Zetetic would be happy to help maintain the SQLite.Net-PCL project by offloading some of the work with updates and periodic releases. We have a long history of working on open source projects. Please feel free to ping me off list if you'd like to discuss working together at<EMAIL_ADDRESS>


1password fills the field but it doesn't realize and keeps the placeholder visible

there needs to be an initial check if the field has been filled by something like 1Password

Suggested fix in this pull request: https://github.com/ginader/HTML5-placeholder-polyfill/pull/69


There is something wrong with ViewTest::testRenderScrapsDataByDefault

ViewTest::testRenderScrapsDataByDefault
asserts
$this->assertTrue(empty($view->getData()));
it has be not empty
$this->assertTrue(!empty($view->getData()));

Yup. Am aware. That's because I changed the default way that acts and forgot to change the test. Will get to it soon :)

I guess due to that all my pull requests are failing, see here https://github.com/bcit-ci/CodeIgniter4/pull/845


Prepare Angular package

### Tasks
- [ ] Refactor Angular directives to use the new mixin with `setCustomValidity()`
- [ ] Fix angular package to be released as `@sl-design-system/angular`

This was completed in #856


Submit all packages to Stackage

I wonder is there any specific reason all those ihaskell-* packages are not submitted to Stackage?
In my workflow, I build and install a version of IHaskell locally, and also have multiple projects which need IHaskell. Each project has different dependencies, but they all have to be careful to use exactly the same versions for ihaskell-* packages (by including a rather long section in stack.yaml). It's difficult to maintain, and when I want IHaskell on a new machine, I also have to be careful to build and install the exact same version all my projects use. If all these packages' versions are locked in a Stackage snapshot, it will be far easier to simply use the same Stackage LTS version for all my projects.

I would like to know the opinions of current maintainers on this issue.
If you think it's a good idea but don't have time, I'm willing to help by submitting to Stackage with me as the maintainer and deal with Stackage-related issues.

I agree it's a good idea to submit the updated ihaskell-display packages. I think the first step is to upload new versions to Hackage, I'll do that in the next couple of days (please feel free to ping me again if it isn't done by Monday).

I didn't notice that currently these packages are not routinely released and uploaded to Hackage. Please upload when you have time. If there are difficulties on this, I would like to help too.


Namespace cleanup

The toplevel namespace has many functions and traits in it that probably won't ever be used. Shift all non-user-frendly entities into detail namespace or meta namespace.

Done as of https://github.com/ThePhD/sol2/commit/3d7a93ae1ce461bec1e82692494b34cb189ebf9d


Events expiration setting in realm.json is ignored during realm import"

Current Behavior
When I put eventsExpiration to 600 like here in the realm.json:
"eventsExpiration": "600"
It just gets ignored in keycloak itself because the newest keycloak version already has a default value for that. So right now, the default value of keycloak overrides my configuration. It only works if I delete the default value in the UI and then import it again.
Expected Behavior
When I put eventsExpiration to 600 like here in the realm.json:
"eventsExpiration": "600"
Keycloak should take it as the value for the user events expiration like in the screenshot down below

Steps To Reproduce
1. set eventsExpiration to 600
2. start the keycloak service
3. import the keycloak config

Environment

Keycloak Version: 24.0.5
keycloak-config-cli Version: 6.2.1
Java Version: 21

Anything else?
No response

Did you try setting eventsExpiration with a number value?
"eventsExpiration": 300


Associate client/station MAC to name when running in AP mode

This is a feature request for LuCI to provide a way to associate a friendly name to a MAC address for wifi clients when running in AP mode. The AP itself does not have an IP address on the normal VLANs (it only has a management IP but that is not useful for arp) and does not run dnsmasq either. The router on the network knows the names, IPs and MACs.
It would be useful to keep an association list MAC -> friendly name, in particular on a home network where all clients are pretty much static, so that it's easy to identify clients in the GUI.

You can either populate /etc/ethers via SSH or declare static DHCP leases without IP (even if dnsmasq is unused) to associate names with MACs.

Great, thank you. I went with /etc/ethers and it works well enough.


Implements GetSourceOutputInfo and GetSourceOutputList

As discussed in https://github.com/janakj/pulseaudio.js/issues/3

Thanks for the PR! Looks great and I am happy to merge the changes and release a new version to NPM. Before I do: did you test the new commands with PulseAudio?

Yes, though I'm not sure I understand some of the values like the minimum latency and maximum. That said, I just followed the pattern I saw elsewhere in the code base. Here's the output directly from pactl compared with the output from the new APIs:
> pactl list source-outputs
Source Output #1
	Driver: protocol-native.c
	Owner Module: 12
	Client: 4
	Source: 3
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Format: pcm, format.sample_format = "\"s16le\""  format.rate = "44100"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
	Corked: no
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	        balance 0.00
	Buffer Latency: 0 usec
	Source Latency: 2241 usec
	Resample method: n/a
	Properties:
		media.name = "recStream"
		application.name = "WEBRTC VoiceEngine"
		native-protocol.peer = "UNIX socket client"
		native-protocol.version = "35"
		application.process.id = "2662"
		application.process.user = "nebu"
		application.process.binary = "Discord"
		application.language = "en_US.UTF-8"
		window.x11.display = ":0"
		application.process.session_id = "1"
		module-stream-restore.id = "source-output-by-application-name:WEBRTC VoiceEngine"
> node index.mjs
[
  {
    index: 1,
    name: 'recStream',
    module: 12,
    client: 4,
    source: 3,
    sampleSpec: { format: 3, channels: 2, rate: 44100 },
    channelMap: [ 1, 2 ],
    latency: { minimum:<PHONE_NUMBER>921058304n, maximum:<PHONE_NUMBER>921058304n },
    resampleMethod: null,
    driver: 'protocol-native.c',
    properties: {
      media: [Object],
      application: [Object],
      'native-protocol': [Object],
      window: [Object],
      'module-stream-restore': [Object]
    },
    corked: false,
    volume: [ 65536, 65536 ],
    muted: false,
    hasVolume: true,
    writableVolume: true,
    formatInfo: { encoding: 1, properties: [Object] }
  }
]

Thanks again for the contribution! I released a new version of the library (1.3.0) and pushed the new version to NPM.


ENH: Print itk::SparseFieldLevelSetImageFilter superclass

Print the superclass in
itk::SparseFieldLevelSetImageFilter::PrintSelf.
Remove unnecessary outputstream message.
PR Checklist

[X] No API changes were made (or the changes have been approved)
[X] No major design changes were made (or the changes have been approved)

Superseded by PR #4193. Closing.


object detection module takes 2 seconds to process a single frame

Hi,
I am using objectdetection module trained from customvision.ai in Azure IoT edge. It takes 2 to 3 seconds to complete the request for a single frame from the camera. I am using raspberry pi with two other modules. I need at least 10 frames per second to be processed with in a second.
Does it have anything to do with the device's hardware configuration? Even so it's too slow that it takes 3 secs to process a single image.
Can anyone explain how to improve the process?

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

ID: a0b23f79-161d-8c2d-e84d-6789a67e7ab6
Version Independent ID: a5e79164-4eed-3e56-125b-203c9f0a525d
Content: Tutorial: IoT Visual Alerts sample - Azure Cognitive Services
Content Source: articles/cognitive-services/Custom-Vision-Service/iot-visual-alerts-tutorial.md
Service: cognitive-services
Sub-service: custom-vision
GitHub Login: @PatrickFarley
Microsoft Alias: pafarley

@misd92 Thanks for your question. I have tried out the solution with some objects and used the camera on my laptop to test since I do not have an IoT device with camera for testing. The detection of objects by the model created by the project is pretty fast. Here is a demo of what I ran.
Due to upload limit the image is resized and shortened for one object.

Since the model is responding pretty well it could be the device or a network issue that could be slowing down your experiment. Could you please try object detection with your laptop before testing with the device to ensure there is no problem with the ONNX model created from custom vision?

Hi Rohit,
Thanks for the reply. I also tried that module from my desktop but still got 1.5 seconds to process the image. When I am containerizing it as Azure Iot Edge module it is slows further. Find the sample reading directly got by running python script from my desktop

************************ Get Image probablity and others Start 2019/12/26 18:43:33.447
WARNING:tensorflow:From predict.py:59: The name tf.GraphDef is deprecated. Please use tf.compat.v1.GraphDef instead.

WARNING:tensorflow:From predict.py:60: FastGFile.init (from tensorflow.python.platform.gfile) is deprecated and will be removed in a future version.
Instructions for updating:
Use tf.gfile.GFile.
Loading model...Success!
Loading labels...1 found. Success!
WARNING:tensorflow:From predict.py:43: The name tf.placeholder is deprecated. Please use tf.compat.v1.placeholder instead.
2019-12-26 18:43:33.675065: Predicting image
2019-12-26 18:43:33.675065: Image size: 640x480
WARNING:tensorflow:From predict.py:49: The name tf.Session is deprecated. Please use tf.compat.v1.Session instead.
2019-12-26 18:43:35.152065: Results: {'id': 'imageid', 'Imagename': 'imagename', 'project': '', 'iteration': '', 'created': '2019-12-26T13:13:35.152065', 'predictions': [{'probability': 0.79125404, 'tagId': 0, 'tagName': 'box', 'boundingBox': {'left': 0.20375983, 'top': -0.03633185, 'width': 0.62175948, 'height': 0.76261882}}, {'probability': 0.152413, 'tagId': 0, 'tagName': 'box', 'boundingBox': {'left': 0.84782572, 'top': 0.09414894, 'width': 0.14378605, 'height': 0.57077305}}]}
************************ Get Imageinfo End 2019/12/26 18:43:35.153
My code for the script is as below
`print("************************ Get Image probablity and others Start "  + datetime.datetime.now().strftime('%Y/%m/%d %H:%M:%S.%f')[:-3])
initialize()
imagepath = "D:\Idhris\OFS\Projects\Avengers\Sprint18\IoTEdgeQRCodeReader\iotedgeqrbarcodereader\modules\barcodereader\app\InputImages\imagebarcodeinput.jpg"
img = cv2.imread(imagepath)
encodedFrame = cv2.imencode('.jpg',img)[1].tostring()
imageData = io.BytesIO(encodedFrame)
image = Image.open(imageData)
imgresult = predict_image(image, imageid, imagename)
print("************************ Get Imageinfo End "  + datetime.datetime.now().strftime('%Y/%m/%d %H:%M:%S.%f')[:-3])`

The average falls under 1.5 seconds
Start 2019/12/26 18:43:33.447
End  2019/12/26 18:43:35.153

Does it have anything to do with export for dockerfile while training?

@misd92 The tutorial uses an ONNX model, in the demo I have used the project as is for detection.
If you need to use python there is a guidance to use a tensor flow model with python in the documentation.
If you have questions regarding the solution please post them in the issues section of the project so the author and project developers could help.

Fine then. I'll post it there


Mongoid support

I see no mention of Mongoid anywhere. Is it possible to work with Mongoid at all ? (Even if the database logging doesn't work yet ?)
EDIT -
The current version will cause a wonderful exception (haha sorry about that) when started with a Mongoid-backed DB with default configuration. Adding...
config.exception_handler = {
    db: false
  }

...doesn't seem to help.
Here's the top of my stack trace
[Rails root]/app/models/exception_handler/error.rb:2:in `<module:ExceptionHandler>': uninitialized constant ExceptionHandler::ActiveRecord (NameError)
        from [Rails root]/app/models/exception_handler/error.rb:1:in `<top (required)>'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.0.beta3/lib/active_support/dependencies/interlock.rb:12:in `block in loading'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.0.beta3/lib/active_support/concurrency/share_lock.rb:117:in `exclusive'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.0.beta3/lib/active_support/dependencies/interlock.rb:11:in `loading'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/engine.rb:476:in `block (2 levels) in eager_load!'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/engine.rb:475:in `each'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/engine.rb:475:in `block in eager_load!'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/engine.rb:473:in `each'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/engine.rb:473:in `eager_load!'
        from [Rails root]/config.ru:6:in `block in <main>'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/builder.rb:55:in `instance_eval'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/builder.rb:55:in `initialize'
        from [Rails root]/config.ru:in `new'
        from [Rails root]/config.ru:in `<main>'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/builder.rb:49:in `eval'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/builder.rb:49:in `new_from_string'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/builder.rb:40:in `parse_file'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/server.rb:318:in `build_app_and_options_from_config'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rack-2.0.0.alpha/lib/rack/server.rb:218:in `app'
        from C:/Dev/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.0.beta3/lib/rails/commands/server.rb:58:in `app'

Sorry, I didn't even notice I ran this after generating the files for my app. removing the ActiveRecord inheritance and adding include Mongoid::Document in the generated model fixed it, and it is probably gonna work with Mongoid.
So the only point that needs to be revisited, is not to generate ActiveRecord model when running the generator script on Mongoid backed Rails.

Hey thank you for the PR - let me check through it will be a few minutes


@FormParam always causes 500 error without any traces in logs

Hi,
I'm building an API to process multipart uploads:
case class MyUploadRequest (@RouteParam param1: String,
                                 @FormParam someName: String,
                                 @Inject request: Request)

I'm posting this request:
POST /myapi/myparam HTTP/1.1
Host: localhost:8888
Cache-Control: no-cache
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="some_name"

hey
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename=""
Content-Type:

------WebKitFormBoundary7MA4YWxkTrZu0gW--

However with @FormField I'm always getting 500 server error without any traces in logs. If I remove @FormParam from my request class, it works as expected.
I have debugged finatra source code and with breakpoint in com.twitter.finagle.Service#rescue I can see following error:
com.twitter.finatra.json.internal.caseclass.exceptions.CaseClassValidationException: some_name: formParam is required

However, as you can see, I'm passing "some_name" form parameter in.
I have 2 questions:
1). Why isn't this message in the logs? I'm using default logging settings which write to system.err I believe.
2). Why "some_name" form parameter isn't recognized?
I'm using finatra 2.4.0.
I'm very new to finatra and scala so I assume there is something stupid cause that I've overseen.
Thanks.

Let's continue this discussion in the original thread.


Support for associating existing NSGs with Subnets during VNet creation or updates

Can one of the admins verify this patch?


钻取地图地市后 地图lable 显示问题🐛 [BUG]

🐛 Bug description [Please make everyone to understand it]

📷 Step to reproduce
🏞 Expected result
🚑 Any additional [like screenshots]

L7Plot Version:
Platform:

@zxc-cool 提供在线示例

+1


tt-topology from tt-system-tools errors out on TT-LoudBox mesh layout

Getting this error using the bundled tt-toplogy from tt-system-tools
~/tt-system-tools$ tt-topology -l mesh -p mesh_layout.png
 Detected Chips: 4
 Starting flash on pcie chips to default state.
 Completed default flash for board 0:<PHONE_NUMBER>0b50f
 Completed default flash for board 1:<PHONE_NUMBER>0b4d9
 Completed default flash for board 2:<PHONE_NUMBER>0b4eb
 Completed default flash for board 3:<PHONE_NUMBER>0b4f1
 Sleeping for 15s ...
 Finished flashing pcie chips to default state.
 Initiating reset on chips at pcie interface: None
 'NoneType' object is not iterable
 Saved json log file to /home/ansible/tt_topology_logs/10-29-2024_03:37:51_log.json

Using latest tt-topology from https://github.com/tenstorrent/tt-topology does not have this issue and topology is correctly changed:
~/tt-topology$ tt-topology -l mesh -p mesh_layout.png
 Detected Chips: 4
 Starting flash on pcie chips to default state.
 Completed default flash for board 0:<PHONE_NUMBER>0b50f
 Completed default flash for board 1:<PHONE_NUMBER>0b4d9
 Completed default flash for board 2:<PHONE_NUMBER>0b4eb
 Completed default flash for board 3:<PHONE_NUMBER>0b4f1
 Sleeping for 15s ...
 Finished flashing pcie chips to default state.
 Initiating reset on chips at pcie interface: [0, 1, 2, 3]
 Starting pci link reset on WH devices at pci indices: 0, 1, 2, 3
 Finishing pci link reset on WH devices at pci indices: 0, 1, 2, 3
 Completed reset on 4 chips
 Detected Chips: 8
 Post reset detected : 8 chips
 Generated connection map:
 0  :  [(3, 'X'), (4, 'X'), (1, 'T')]
 1  :  [(2, 'X'), (5, 'X'), (0, 'T')]
 2  :  [(1, 'X'), (6, 'X'), (3, 'T')]
 3  :  [(0, 'X'), (7, 'X'), (2, 'T')]
 4  :  [(0, 'X'), (5, 'T')]
 5  :  [(1, 'X'), (4, 'T')]
 6  :  [(2, 'X'), (7, 'T')]
 7  :  [(3, 'X'), (6, 'T')]
 Coordinates for mesh layout:  {4: (0, 0), 0: (1, 0), 5: (0, 1), 3: (2, 0), 1: (1, 1), 7: (3, 0), 2: (2, 1), 6: (3, 1)}
 Flashing n300 -<PHONE_NUMBER>0b50f coord address : 0x00021200 to 0, 0
 Flashing n300 -<PHONE_NUMBER>0b50f port disable address : 0x00021208 to 0000

 Flashing n300 -<PHONE_NUMBER>0b50f coord address : 0x00021100 to 1, 0
 Flashing n300 -<PHONE_NUMBER>0b50f port disable address : 0x00021108 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4d9 coord address : 0x00021200 to 0, 1
 Flashing n300 -<PHONE_NUMBER>0b4d9 port disable address : 0x00021208 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4f1 coord address : 0x00021100 to 2, 0
 Flashing n300 -<PHONE_NUMBER>0b4f1 port disable address : 0x00021108 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4d9 coord address : 0x00021100 to 1, 1
 Flashing n300 -<PHONE_NUMBER>0b4d9 port disable address : 0x00021108 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4f1 coord address : 0x00021200 to 3, 0
 Flashing n300 -<PHONE_NUMBER>0b4f1 port disable address : 0x00021208 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4eb coord address : 0x00021100 to 2, 1
 Flashing n300 -<PHONE_NUMBER>0b4eb port disable address : 0x00021108 to 0000

 Flashing n300 -<PHONE_NUMBER>0b4eb coord address : 0x00021200 to 3, 1
 Flashing n300 -<PHONE_NUMBER>0b4eb port disable address : 0x00021208 to 0000

 Completed coord flash for board<PHONE_NUMBER>0b50f
 Completed coord flash for board<PHONE_NUMBER>0b4d9
 Completed coord flash for board<PHONE_NUMBER>0b4eb
 Completed coord flash for board<PHONE_NUMBER>0b4f1
 Sleeping for 15s ...
 Finished flashing chips to generated coordinates.
 Initiating reset on chips at pcie interface: [0, 1, 2, 3]
 Starting pci link reset on WH devices at pci indices: 0, 1, 2, 3
 Finishing pci link reset on WH devices at pci indices: 0, 1, 2, 3
 Detected Chips: 8
 Completed reset on 8 chips

 Saved board layout to mesh_layout.png
 Saved json log file to /home/ansible/tt_topology_logs/10-29-2024_03:39:08_log.json

I'm not sure where this bundled version is coming from but since this seems to be working in the upstream repo this bug needs to be brought up with whomever is getting you a bundled version as we don't provide that and have no visibility into it.


Dummy app

As a PO, I would like to have dummy application to help development

Blocked by #40

Done
Thanks a lot @leandrocp
Here: https://github.com/BeaconCMS/beacon_demo


Add library and platform identifier to LocationHistoryData objects

The Android and iOS example apps are both going to upload this data to the same S3 bucket. I think it will be useful for future debugging to have some way to identify the platform that generated this data.
I have deliberately reused the format used by the Ably client libraries, since it is well-specified and has presumably already had a good amount of thought put into it.
Closes #63.

Perhaps https://github.com/ably/ably-asset-tracking-swift/pull/452 would be the best answer to your question, @QuintinWillison. I believe that the ClientOptions#agents property is the getter that you're referring to.

@KacperKluka I'd appreciate your thoughts on this one too if you've got a moment to take a look 🙂

Thanks, @lawrence-forooghian. Alas, while I acknowledge that I approved the Cocoa agents PR, the implementation doesn't match what was specified in RSC7d6a. 😞
The design as originally anticipated, matching the pattern of use for other properties on client options, was that the agents property would be the only new interface. It was anticipated to be a mutable pointer to a dictionary (akin to transportParams), where the wrapping SDK would set it to point to the map of additional product identifiers it was adding. Therefore, the functionality you're taking advantage of should not be there, and is way beyond scope of what was specified, and actually quite weird in its current context. 😕
You'll not find the same capability in the Android SDK - see https://github.com/ably/ably-java/pull/671 - as it conforms to what was specified.
My preference would be to:

Correct the ably-cocoa implementation by removing addAgent:version: and replacing the agents method with a property as described above, and as specified. I'll create an issue for this. We can make this a breaking change in a 1.2 series patch release per our guidance around adoption of SemVer.
Specify an appropriate API for client libraries to return either just their layer's product pairs or to return an aggregate based on this layer's supplied product pairs. I'll create an issue for this also.


Canon GX7050: Not all options work via driverless configuration

Describe the bug
The printer does not use my configured print job options
To Reproduce
Steps to reproduce the behavior:

Add the printer: lpadmin -p 'Canon-GX7050' -v 'ipp://<IP_ADDRESS>/ipp/print'  -E -m 'driverless:ipp://<IP_ADDRESS>/ipp/print'

It does not make any difference using lpadmin or the CUPS webinterface.
Happens on both IPP and IPPS
Makes no difference if I use the IPv4 address or the DNS Canon%20.local.

Choose any document, e.g., PDF, to print
Select the second tray, increase number of copies, and/or select long-egde binding
Click on print
The printer only uses tray 1, ignores long-edge binding, and aborts the print job if duplex and multiple copies is used. Without duplex, it also not able to print multiple copies.

Expected behavior
Print the job as desired.
Screenshots
None.
System Information:

OS: Debian Testing 13
Browser: Firefox 122.0
Version: 1.28.17-3+b1

Additional context
I was able to fix the tray issue by editing the PPD file. Here is my diff
Canon-GX7050-ppd.txt.
Here is the PPD file manually generated by driverless ipps://<IP_ADDRESS>/ipp/print: Canon-GX7050-driverless-ppd.txt.

The following tray specifications also work:
*InputSlot Auto: "<</MediaPosition 0>>setpagedevice"
*InputSlot Rear: "<</MediaPosition 18>>setpagedevice"
*InputSlot Tray1: "<</MediaPosition 11>>setpagedevice"
*InputSlot Tray2: "<</MediaPosition 13>>setpagedevice"

For me duplex printing and printing multiple copies work.
I added the printer using the web interface of CUPS 2.4.7.
Here you can find my current (self-modified) PPD file: Canon_GX7050-color.ppd.txt