Interaction with autorandr

I'm using autorandr to automatically switch between monitors configuration. When I'm switching from two monitors to only one, the remaining screen gets the two bars. The solution I tried was to use autorandr postswitch script, which is executed right after each screen change, and execute the launch.sh script I'm using when starting i3.
While the lanch.sh works great on its own, when triggered by autorandr the bar isn't displayed. Using a debug build of polybar + log to trace, I get the following and then nothing.
polybar|trace  config: Loaded ~/.config/polybar/config
polybar|trace  config: Current bar section: [bar/bottom_bar]
polybar|trace  controller: Initialize X atom cache
polybar|trace  controller: Query X extension data
polybar|trace  controller: Create IPC handler
polybar|trace  controller: Listen for events on the root window
polybar|trace  controller: Setup bar
polybar|trace  bar: Create monitor from matching X RandR output

Polybar version:
polybar 2.3.0-8-g88c8bbd
Built with: +alsa +i3 +mpd +network

I've added logic b9ff9c5 that will reload the bar upon receiving a XCB_RANDR_SCREEN_CHANGE_NOTIFY event (needs to be turned on in the conf). This will solve issues where the bar size/pos doesn't match after a randr update.

@jaagr what's the option that needs to be turned on in the conf for this to work?

[settings]
screenchange-reload = true

:ok_hand: excellent, works perfectly

I had some issues when I tried it, but now it's working, thanks a lot ! I just need to recreate the bar when I'm plugging a monitor, but that's alright. Quick question though: anyway to make the systray reappear ?

@Kazy Make sure you only have one bar with the tray setting enabled. If another one is launched it will override the other one, and I've disabled re-activation when that happens. Otherwise you could just restart all bars.

I can't restart all bar with autorandr, that was my original issue. Nothing's happening.
And the tray doesn't show up some time for some reason, but I had the same issue with others bars, I don't think it's related to polybar. I think we can close the issue, thanks again :)

That's odd.. I used postswitch + udev with autorandr to launch and it worked fine when it got fired..
Added notify-send -u low "autorandr: restarting polybar" to get notified when it got triggered...

 No idea what changed, but the issue is completely resolved :+1:

Great!

Somehow, for me the bars do not launch correctly in the postswitch hook. If I trigger autorandr manually, everything works well, but when using udev after changes connections, the new bars do not start correctly. Any idea what could be causing this?

@languitar: Does polybar give any errors? And what do you mean by 'not correctly'?

It looks like it would be starting for a second because the windows temporarily shift down but in the end no bars appear. As autorandr is called from udev I have tried to send all output (for three bars) to a log file. This is what I see:
polybar|error: Disabling module "i3" (reason: Could not find socket: <empty>)
polybar|warn:  Termination signal received, shutting down...
polybar|error: Disabling module "i3" (reason: Failed to connect to i3: errno 111 (Connection refused))
polybar|error: module/i3: Failed to connect to i3: errno 111 (Connection refused)
polybar|warn:  Stopping 'module/i3'...
polybar|error: Disabling module "i3" (reason: Failed to connect to i3: errno 111 (Connection refused))
polybar|warn:  Termination signal received, shutting down...
polybar|warn:  Termination signal received, shutting down...
polybar|warn:  Termination signal received, shutting down...

My launch file first kills existing bars, so I am not sure whether these are actually expected outputs.

Please only try it with a single bar, otherwise it is impossible to distinguish what message came from which bar. Also please run polybar with -l info and apply the following patch and compile again:
diff --git a/src/components/controller.cpp b/src/components/controller.cpp
index 2f93c96..7fd6a89 100644
--- a/src/components/controller.cpp
+++ b/src/components/controller.cpp
@@ -30,6 +30,7 @@ sig_atomic_t g_terminate{0};
 void interrupt_handler(int signum) {
   g_terminate = 1;
   g_reload = (signum == SIGUSR1);
+  logger::make().err("Received signal: %s (%d)", strsignal(signum), signum);
   if (write(g_eventpipe[PIPE_WRITE], &g_terminate, 1) == -1) {
     throw system_error("Failed to write to eventpipe");
   }

This should give some more insight to what's actually happening. I don't think polybar is doing anything wrong here, whatever script you are using to restart the bar probably has some unintended side-effects when you trigger it via udev.

I did not apply the patch yet, but this is the log of a single bar being launched from autorandr, which disappears immediately:
polybar|info:  Loading config: /home/languitar/.config/polybar/config
polybar|info:  Environment var reference ${MONITOR} found (value=eDP1)
polybar|info:  Loaded monitor eDP1 (1920x1080+0+0)
polybar|info:  Bar geometry: 1920x22+0+0
polybar|error: Disabling module "i3" (reason: Could not find socket: <empty>)
polybar|info:  Starting application
polybar|info:  Starting module/xbacklight
polybar|info:  Starting module/volume
polybar|info:  Starting module/cpu
polybar|info:  Starting module/memory
polybar|info:  Starting module/swap
polybar|info:  Starting module/battery
polybar|info:  Starting module/filesystem
polybar|info:  Starting module/xkeyboard
polybar|info:  Starting module/date
polybar|info:  Starting module/powermenu
polybar|info:  Entering event loop (thread-id=1)
polybar|info:  Eventqueue worker (thread-id=11)
polybar|info:  Configured DPI = 96x96
polybar|info:  Loaded font "DejaVu Sans Mono:pixelsize=9" (name=DejaVu Sans Mono, offset=1, file=/usr/share/fonts/TTF/DejaVuSansMono.ttf)
polybar|info:  Loaded font "Material Icons:pixelsize=10" (name=Material Icons, offset=2, file=/usr/share/fonts/TTF/MaterialIcons-Regular.ttf)
polybar|info:  Bar window: 0x1a00002
polybar|info:  Activating tray manager
polybar|info:  Tray window: 0x1a00006
polybar|warn:  Termination signal received, shutting down...
polybar|info:  module/xbacklight: Stopping
polybar|info:  Deconstruction of module/xbacklight took 0 ms.
polybar|info:  module/volume: Stopping
polybar|info:  Deconstruction of module/volume took 1 ms.
polybar|info:  module/cpu: Stopping
polybar|info:  Deconstruction of module/cpu took 0 ms.
polybar|info:  module/memory: Stopping
polybar|info:  Deconstruction of module/memory took 0 ms.
polybar|info:  module/swap: Stopping
polybar|info:  Deconstruction of module/swap took 0 ms.
polybar|info:  module/battery: Stopping
polybar|info:  Deconstruction of module/battery took 169 ms.
polybar|info:  module/filesystem: Stopping
polybar|info:  Deconstruction of module/filesystem took 0 ms.
polybar|info:  module/xkeyboard: Stopping
polybar|info:  Deconstruction of module/xkeyboard took 0 ms.
polybar|info:  module/date: Stopping
polybar|info:  Deconstruction of module/date took 0 ms.
polybar|info:  module/powermenu: Stopping
polybar|info:  Deconstruction of module/powermenu took 0 ms.
polybar|info:  Notifying pending tray clients
polybar|info:  Deactivating tray manager
polybar|info:  Waiting for spawned processes to end
polybar|info:  Reached end of application...

Could you post your postswitch script?

I think I have finally found the reason for this problem. In case the display configuration is changed, the autorandr udev rule starts the autorandr.service systemd unit. This unit then calls /usr/bin/autorandr --batch --change --default default, which dispatches autorandr to all user sessions and effectively results in calling all postswitch hooks for the user sessions, which then start the new polybar instances. The culprit here is that a systemd unit is used. The default behavior of systemd units is to clean up all spawned processes in the control group of the original autornadr --batch call, which also includes the newly spawned polybar instances.


Content audit analysis

Problem statement
We need to know how our current site and plans are meeting our users' needs and RS goals. An audit will examine that based on previously IDed needs and priorities.
What you need to know
(May add detailed audit doc when that ticket is completed)

General planning doc
Workshop synthesis deck with planning notes
Mural of general work roadmap/misc notes

Acceptance criteria

[x] Scope examined through determined heuristics
[x] Tickets created for next steps

To do

[ ] ...

@audreykwr note to adjust points here as we discussed in our 1:1 today

Closing. Initial deck of work here


Add an API to boost a task’s priority

There should be an API to increase a task’s priority. I am currently working around the lack of such an API using
Task(priority: targetPriority) {
  await self.resultTask.value
}

Konrad mentioned that we should offer __priorityBoost(task, priority) here: https://github.com/apple/sourcekit-lsp/pull/1208#discussion_r1586410916

Thanks for the issue, yes I think this is something we likely should offer even if for spi use for now, because we may have situations where due to other information we know to boost a task -- kind of like your scheduler does.


Try https in smoke tests

Let's try this'n https://github.com/honeycombio/honeycomb-opentelemetry-dotnet/issues/277

Agh, bummer, it wasn't the s. Weird, since this all runs just fine outside of the smoky environment.

Gonna try another


Issue about ${var} one PHP 8.2

Code of Conduct

[x] I agree to follow this project's Code of Conduct.

Submission validity

[X] This is not a personal support request, that should be posted on discussions community.
[X] I checked current issues and this request isn't a duplicate of an existing issue, opened or closed.

Summary
Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /www/wwwroot/sus.show/admin/index.php on line 295

Motivation
PHP 8.2: ${var} string interpolation deprecated
Describe the solution
No response

Fixed by https://github.com/YOURLS/YOURLS/pull/3474
Will be part of next YOURLS release, 1.9.2.


install cilium error

My machine only support Generic XDP,
Can I install cilium for study ？

Depends what you want to study. If you plan to run any performance benchmark, then no, Generic XDP is really not the same as Native XDP.

看你想学什么。 如果您计划运行任何性能基准测试，那么不，Generic XDP 与 Native XDP 确实不同。


Chinese language, fixes and minor updates

What was done

Add Chinese language
Arrange languages in README.md in alphabetical order
Add one line between header & name in LICENSE in every file
Delete header file (there is no need for it)
Fix showing emojis in the arrow (check details)
Remove UIKit from a non-UI service

Implementation details
There was a bug when scrolling, in the arrow to source view we can see emojis

The version was updated to 3.0.8

Thanks again for your help with syncing my fork

Please, change target branch from main to develop. There are some updates, it would be much easier for me

It's my pleasure. Thank you again for contributing @uuidev!


Using deltas in float range construction?

Float numbers sometimes are not perfect. For example, you'll get (using elm repl in this case):
> 4.4-1
3.4000000000000004 : Float

This is probably due to how floats are represented as IEEE numbers, and not at all the fault of elm, or javascript. But this behaviour creates bugs with ranges:
> [2.4..5.4]
[1.4000000000000004,2.4000000000000004,3.4000000000000004,4.4,5.4] : List Float

Note the 1.4 here, it doesn't belong here at all.
From looking at the compiled output, I see that the range function is like:
function range(lo, hi)
{
	var list = Nil;
	if (lo <= hi)
	{
		do
		{
			list = Cons(hi, list);
		}
		while (hi-- > lo);
	}
	return list;
}

probably this bug would be fixed if there was a delta comparison instead of direct > in the loop.

Related to #1165

No more [1..6] in 0.18, only List.range : Int -> Int -> List Int, so this is a problem for library authors now.


Bug with uppercase # noqa: SIM114 and RUF100

Hi,
Thanks for making Ruff, it's an exellent linter :)
We just recently updated our project to Ruff 0.0.280 and seems to experience a weird bug.
Our code uses a rather large if-statement pulled straight form a research paper. To keep the code and the paper pretty equal, the code is written the exact same way as the paper. This means that we need to ignore some SIM114-warnings.
When updating to 0.0.280 we started to receive a warning
RUF100 [*] Unused `noqa` directive (unused: `SIM114`)
However, when removing the # noqa: SIM114 we start to receive the warning:
SIM114 Combine `if` branches using logical `or` operator
When testing we discovered that if we changed to the comment to # noqa: sim114 we dont receive the RUF100 anymore.
I'll include some small example code which shows the weird behaviour:
a = True
b = False

def foo():
    if a > b: # noqa: SIM114
        return 3
    elif a == b:
        return 3
    elif a <  b: # noqa: sim114
        return 4
    elif b is None:
        return 4

The first noqa gives a RUF100 warning, the second gives none.

Will take a look today!

Okay, it's a few confusing things working together... The root of the problem is that if branches contain different comments, we avoid flagging SIM114. So when you have this:
def foo():
    if a > b: # noqa: SIM114
        return 3
    elif a == b:
        return 3

We don't flag SIM114 because of the # noqa: SIM114 comment, and so the comment then becomes unused. If you remove the comment, then SIM114 is raised again, because the comment is no longer present to make the branches non-identical.

I'm going to change the logic to ignore end-of-line comments and only check in-body comments, which will remove this confusion. (Your code with # noqa: SIM114 at the end of the test lines should work as expected.)

That makes sense. thanks for such quick responses! : )


Added advise to enable GIT changes count

Fix for: https://github.com/domtronn/spaceline-all-the-icons.el/issues/5

https://github.com/domtronn/spaceline-all-the-icons.el/issues/5

Closing as git-stats segment now works for both normal and plus versions - Also, it should be the responsibility of the user to enable the correct modes that make the segment work. Don't want to duplicate documentation with 3rd party packages.


OTel features overwhelmed during high load

When o11y is enabled in Spin (some variation of OTEL_EXPORTER_OTLP_ENDPOINT is set) and a large amount of load is run against Spin we start to see that the OTel feature gets overloaded.
2024-06-14T21:24:49.087649Z ERROR spin_telemetry: There has been an error with the OpenTelemetry system, traces and metrics are likely failing to export
2024-06-14T21:24:49.087664Z ERROR spin_telemetry: Further OpenTelemetry errors will be logged at DEBUG level
2024-06-14T21:24:49.087669Z  WARN spin_telemetry: OpenTelemetry error err=Trace(Other(ChannelFull))
2024-06-14T21:24:49.087675Z  WARN spin_telemetry: OpenTelemetry error err=Trace(Other(ChannelFull))
2024-06-14T21:24:49.087681Z  WARN spin_telemetry: OpenTelemetry error err=Trace(Other(ChannelFull))

Possible fixes to explore:

Figure out sampling and document how to configure it.
Increase channel sizes.
Something else?

there is a lot of on going work to make Otel suitable for this kind of demanding usecases.
Requirements from Apache Pulsar seems to be the starting point/driver to work on this

on Otel side and
on Pulsar side
This is an overview/parent issue with lots of insides:
https://github.com/apache/pulsar/issues/21121

I'm not sure that there is anything we can/should be doing about this in Spin itself apart from handling overflows gracefully. To that end: maybe we should rate-limit/collapse these otel errors (and add a metric?) to make sure we aren't blowing out logs?

Agreed. I like the idea of tracking errors with a metric.
OTel errors are already only emitted at DEBUG level. @lann are you saying you think they should be rate limited still so that if you RUST_LOG=debug you don't get overwhelmed with OTel errors?

@lann are you saying you think they should be rate limited still so that if you RUST_LOG=debug you don't get overwhelmed with OTel errors?

It might be nice, especially for this specific ChannelFull error indicating backpressure from a telemetry sink.

Quick learning.
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 OTEL_BSP_MAX_CONCURRENT_EXPORTS=4 OTEL_BSP_MAX_QUEUE_SIZE=4096 OTEL_BSP_SCHEDULE_DELAY=2000 spin up

I don't think we will want to actually hardcode this into Spin, but for certain end users they might want to tune it this aggressively. It's something worth documenting more explicitly.


ArangoDB Web Interface not working after taking the latest AUR update

My Environment

ArangoDB Version:    3.4.7
Storage Engine:   RocksDB
Deployment Mode:  Single Server
Deployment Strategy:  ArangoDB Starter
Configuration:
Infrastructure:  own
Operating System:  Arch Linux
Total RAM in your machine:  32GB
Disks in use:
Used Package:   AUR

Component, Query & Data
Affected feature: Web Interface networking

AQL query (if applicable):
AQL explain (if applicable):

Dataset:

Size of your Dataset on disk:

Replication Factor & Number of Shards (Cluster only):

Steps to reproduce

Install the latest update from AUR

Problem:
Cannot log in to the web interface (arangosh works)
Expected result:
User will be able to login through the web interface

Following is the Error on /var/log/arangodb3/arangod.log
2019-09-02T12:02:51Z [643] INFO ArangoDB (version 3.4.7 [linux]) is ready for business. Have fun!
2019-09-03T12:13:07Z [643] ERROR Service "/_admin/aardvark" encountered an error while being mounted @ index.js:30:14
2019-09-03T12:13:07Z [643] ERROR   28 |
2019-09-03T12:13:07Z [643] ERROR   29 | context.use(require('./aardvark'));
2019-09-03T12:13:07Z [643] ERROR > 30 | if (internal.isFoxxApiDisabled()) {
2019-09-03T12:13:07Z [643] ERROR      |              ^
2019-09-03T12:13:07Z [643] ERROR   31 |   context.service.router.all('/foxxes/*', (_req, res) => {
2019-09-03T12:13:07Z [643] ERROR   32 |     res.throw(403, new ArangoError({
2019-09-03T12:13:07Z [643] ERROR   33 |       errorNum: errors.ERROR_SERVICE_API_DISABLED.code,
2019-09-03T12:13:07Z [643] ERROR
2019-09-03T12:13:07Z [643] ERROR via ArangoError: failed to invoke module
2019-09-03T12:13:07Z [643] ERROR Reason: TypeError: internal.isFoxxApiDisabled is not a function
2019-09-03T12:13:07Z [643] ERROR File: /usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/index.js
2019-09-03T12:13:07Z [643] ERROR     at Module.load (/usr/share/arangodb3/js/common/bootstrap/modules.js:567:11)
2019-09-03T12:13:07Z [643] ERROR     at FoxxService.run (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/service.js:527:14)
2019-09-03T12:13:07Z [643] ERROR     at exports.routeService (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/routing.js:288:40)
2019-09-03T12:13:07Z [643] ERROR     at Object.ensureServiceLoaded [as ensureRouted] (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/manager.js:447:10)
2019-09-03T12:13:07Z [643] ERROR     at foxxRouting (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:994:21)
2019-09-03T12:13:07Z [643] ERROR     at execute (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:1234:7)
2019-09-03T12:13:07Z [643] ERROR     at Object.routeRequest (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:1253:3)
2019-09-03T12:13:07Z [643] ERROR     at Function.callback (/usr/share/arangodb3/js/actions/api-system.js:54:15)
2019-09-03T12:13:07Z [643] ERROR via TypeError: internal.isFoxxApiDisabled is not a function
2019-09-03T12:13:07Z [643] ERROR     at Object.<anonymous> (/usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/index.js:30:14)
2019-09-03T12:13:07Z [643] ERROR     at Module._compile (/usr/share/arangodb3/js/common/bootstrap/modules.js:609:8)
2019-09-03T12:13:07Z [643] ERROR     at Object.Module._extensions..js (/usr/share/arangodb3/js/common/bootstrap/modules.js:627:12)
2019-09-03T12:13:07Z [643] ERROR     at Module.load (/usr/share/arangodb3/js/common/bootstrap/modules.js:550:36)
2019-09-03T12:13:07Z [643] ERROR     at FoxxService.run (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/service.js:527:14)
2019-09-03T12:13:07Z [643] ERROR     at exports.routeService (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/routing.js:288:40)
2019-09-03T12:13:07Z [643] ERROR     at Object.ensureServiceLoaded [as ensureRouted] (/usr/share/arangodb3/js/server/modules/@arangodb/foxx/manager.js:447:10)
2019-09-03T12:13:07Z [643] ERROR     at foxxRouting (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:994:21)
2019-09-03T12:13:07Z [643] ERROR     at execute (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:1234:7)
2019-09-03T12:13:07Z [643] ERROR     at Object.routeRequest (/usr/share/arangodb3/js/server/modules/@arangodb/actions.js:1253:3)

Hi,
You're mixing up a js folder from 3.5 and a binary of ArangoDB 3.4 here.
The .js code leans on functionality that only 3.5 will have.

I don't have any such js folder. I have only updated the aur.

Ok,
With ArangoDB 3.4.8 these options were also added to the 3.4 branch:
* Fixed internal issue #3680 by adding two new options to make the server more secure:
  - `--foxx.api`: set to false disables Foxx management API
  - `--foxx.store`: set to false disables Foxx UI

Most probably you have a mix in binary / js Version which can be found there.

Hi @neel,
Could you please share a status update on this ticket?
Did you manage to solve the issue with the help of dothebart's latest comment?

@maxkernbach current version 3.5.0 working. I can login.


feat: add support for using existing IAM roles and policies

Summary
Customer requires that IAM roles and policies are created out of band (manually) from Terraform code. They can then be supplied back to the TF code to complete the deployment process.
These code changes make it possible to create the policies and roles ahead of time, and them supply the ARNs to the Terraform code at deployment time. Some assumptions can be made about resource ARNs based on the AWS account being deployed into and the Suffix input.
How did you test this change?
I deployed using the following steps

Created IAM policies manually
Created IAM roles manually
Supplied IAM roles to the TF code with other inputs

The process was documented in this custom deployment guide for the customer: https://docs.google.com/document/d/1WVdDbIjZocPWIwqGNpfv1AoEGZGn86Yd6uLa4fGDJes/edit#heading=h.rype6bwvii3n
`module "lacework_aws_agentless_scanning_singleregion" {
source  = "lacework/agentless-scanning/aws"
version = "~> 0.5"
global                      = true
regional                    = true
use_existing_iam_role       = true
use_existing_event_role     = true
use_existing_execution_role = true
use_existing_task_role      = true
iam_role_arn                          = "arn:aws:iam::208579789765:role/lacework-iam-role"
iam_role_external_id                  = "VON8ab7cfd0"
agentless_scan_ecs_task_role_arn      = "arn:aws:iam::208579789765:role/lacework-ecs-task-role"
agentless_scan_ecs_execution_role_arn = "arn:aws:iam::208579789765:role/lacework-ecs-execution-role"
agentless_scan_ecs_event_role_arn     = "arn:aws:iam::208579789765:role/lacework-ecs-event-role"
suffix                    = "von1234"
lacework_integration_name = "TF_agentless_scanning"
}
`
Issue
Zendesk Ticket: https://lacework.zendesk.com/agent/tickets/9714

Make it so!

make it so

@lwsporcello CI is upset:

@theopolis are you +1 on this change? This might trigger modifications during apply since we will now be using the count operator.

@lwsporcello CI is upset:
@theopolis are you +1 on this change? This might trigger modifications during apply since we will now be using the count operator.

This should now be fixed with some additional logic to the iam_role_arn local variable

Make it so


How do I whitelist emails to keep them from dropping?

https://sendgrid.com/docs/Classroom/Deliver/Undeliverable_Email/how_do_i_keep_emails_from_dropping.html
This page makes it sound like this feature is available to us, but it is not, unless I am somehow not finding it.  We are using essentials plan.  Can the documentation explain the requirements for this feature?

Hey Bob,
There should be any plan restrictions on this feature, it should be up at the top of the list of options under: https://app.sendgrid.com/settings/mail_settings
Would you mind giving that link a click and letting me know what you see?

Thank you!  I do not see such an option on that page.  Here is what I see:

Thanks for taking a look! Strange. It depends on what your actual plan is in the system, If you're interested in digging deeper, I'd recommend giving us a shout at support.sendgrid.com so an agent can get your username and take a look in the backend.

Hello @bob-hinrichs,Thanks for your suggestion or question! In an attempt to clear out our backlog,                                              we are closing out issues over 90 days old.                                             If this is still an issue, please feel free to reopen it.                                             Team SendGrid DX-Docs


Add emulation data preprocessing transforms to fv3fit

Short description of why the PR is needed and how it satisfies those requirements, in sentence form.
(Delete unused sections)
Added public API:

symbol (e.g. vcm.my_function) or script and optional description of changes or why they are needed
Can group multiple related symbols on a single bullet

Refactored public API:

Bulleted list of removed or refactored symbols, such as changes to name, type, behavior, argument, etc. Be cautious about doing these and discuss with team more broadly.

Significant internal changes:

Bulleted list of changes to non-public API

Requirement changes:

Bulleted list, if relevant, of any changes to setup.py, requirement.txt, environment.yml, etc

[ ] Ran make lock_deps/lock_pip following these instructions

[ ] Add PR review with license info for any additions to constraints.txt
(example)

[ ] Tests added

Resolves # [JIRA-TAG]
(Delete this for the commit message)
You are encouraged to check the PR against the Code Review Checklist.

[ ] - Try out dumpable transform class for legacy
[ ] - Add tests for transforms
[ ] - finish config -> pipeline re-integration

Related to #1265 .

I decided to remove the custom transform pipeline since it was just some personal use cases I had in mind, but I generally agree that the flexibility probably adds too much complexity and potentially confusing aspects.
I added in the basics for loading from a directory of netcdfs.  @AnnaKwa I'll make sure to add an example of usage into vcm-workflow-control, but I think I'll wait on docs entry until this has stabilized.


fix callback Url

coverage: 83.608%. remained the same when pulling 7d9eb699e9407c057bfe651f26ce979343ba2206 on fix-sign-transaction into b5435db4e13fe397c250621c66b534ed91ccd9d1 on mintbase-wallet.


Before You Report a Bug, Please Confirm You Have Done The Following...

[X] I have updated to the latest version of the packages.
[X] I have searched for both existing issues and closed issues and found none that matched my issue.

DeepFace's version
v0.0.92
Python version
3.10.1
Operating System
Ubuntu22.04
Dependencies
In my code, I use the verify function to check if two images are similar. I packaged the program with PyInstaller and ran it on both amd64 and arm64, which are both Ubuntu 22.04 systems. However, the verify function works fine on amd64, but on arm64 it cannot compare the images and there are no error messages. How can I find out the reason for the error? Here is the code I used in the program.
Reproducible example
similar_label = DeepFace.verify(
                    img1_path=image,
                    img2_path=match[0],
                    model_name='GhostFaceNet',
                    # detector_backend='retinaface',
                    enforce_detection=False,
                    threshold=1 - match[1]
                )

Relevant Log Output
No response
Expected Result
No response
What happened instead?
No response
Additional Info
No response

You should raise this issue in tensorflow's repo, it is all about it instead of deepface.


add a new Exception for NPE after replaceWith in Node visitor

#1289

Thanks -- lots of changes here that seem outside of the scope of the original issue. I implemented support for that in d66decd3c6ce450c19f276e9693a2727b7aa9748


Make VQC & QNN Scikit-learn compliant

What is the expected enhancement?
VQC & QNN does not allow to implement Sklearn BaseEstimator to be inherited. Hence, we are unable to use Sklearn Gridsearch on VQC & QNN estimators for hyperparameter tuning.

There is a guide how to develop scikit learn compatible estimators: https://scikit-learn.org/stable/developers/develop.html
In general, inheritance is not required, but method compatibility is.

class VQC_Sklearn(VQC, NeuralNetworkClassifier, BaseEstimator, ClassifierMixin):
def get_params(self, deep=True):
out = dict()
for key in self._get_param_names():
## The if statement is to bypass "callback" and "quantum_instance" attribute not defined
if (key != "callback" and key != "quantum_instance"):
value = getattr(self, key)
if deep and hasattr(value, "get_params") and not isinstance(value, type):
deep_items = value.get_params().items()
out.update((key + "__" + k, val) for k, val in deep_items)
out[key] = value
return out
However, I still get the AttributeError: can't set attribute

However, I still get the AttributeError: can't set attribute

I guess, set_params to be implemented as well. The implementation may be tricky though.

Finally the solution below worked for me:
class vqc_wrapper(BaseEstimator):
def __init__(self, feature_map,ansatz,optimizer,initial_point,quantum_instance,callback):
    self.feature_map = feature_map
    self.ansatz = ansatz
    self.optimizer = optimizer
    self.initial_point = initial_point
    self.quantum_instance = quantum_instance
    self.callback = callback
    self.vqc = None

def fit(self, X, y):
    self.vqc = VQC(
        feature_map=self.feature_map,
        ansatz=self.ansatz,
        optimizer=self.optimizer,
        initial_point=self.initial_point,
        quantum_instance=self.quantum_instance,
        callback=self.callback)
    return self.vqc.fit(X,y)

def predict(self, X):
    return self.vqc.predict(X)

def score(self, X, y):
    return self.vqc.score(X,y)

If you don't mind, I'd keep this issue open as it is not resolved in the QML code.

I have an opinion on this, we can try some approaches to fix this issue.
Instead of using Sklearn Gridsearch, we can implement a custom hyperparameter search function for VQC and QNN. This can be done by defining a parameter space for the hyperparameters and then performing a grid search or random search over this space.
Another approach is to create wrapper functions that allow VQC and QNN to be used as Sklearn estimators. This can be achieved by creating a wrapper class that inherits from BaseEstimator and implements the necessary methods such as fit(), predict(), and score(). The wrapper class can then be used with Sklearn Gridsearch for hyperparameter tuning.
I'm just checking to implement any one of them.

@AbdullahKazi500  Yes, I wanted to work on this issue. I have recently got to understand all the approaches you mentioned above.

@adekusar-drl
this is my code
!pip install qiskit-machine-learning
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from qiskit import Aer
from qiskit_machine_learning.algorithms import VQC
from qiskit.circuit.library import ZZFeatureMap, RealAmplitudes
from qiskit.algorithms.optimizers import SPSA
from sklearn.metrics import accuracy_score

# Generate synthetic dataset for demonstration
X, y = make_classification(n_samples=100, n_features=2, n_informative=2, n_redundant=0, random_state=42)

# Split the dataset into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Create a parameter grid for hyperparameter tuning
param_grid = {
    'ansatz': [RealAmplitudes(), None],
    'optimizer': [SPSA(maxiter=100)],
    'quantum_instance': [Aer.get_backend('qasm_simulator'), Aer.get_backend('statevector_simulator')]
}

best_score = 0
best_params = None

# Loop over the parameter grid
for ansatz in param_grid['ansatz']:
    for optimizer in param_grid['optimizer']:
        for quantum_instance in param_grid['quantum_instance']:
            try:
                # Create the feature map and VQC
                num_qubits = X.shape[1]
                feature_map = ZZFeatureMap(num_qubits, reps=1)
                vqc = VQC(feature_map, ansatz, optimizer, quantum_instance=quantum_instance)

                # Fit the model
                vqc.fit(X_train, y_train)

                # Predict on the test set
                y_pred = vqc.predict(X_test)

                # Calculate accuracy score
                score = accuracy_score(y_test, y_pred)

                # Check if the current model has the best score
                if score > best_score:
                    best_score = score
                    best_params = {'ansatz': ansatz, 'optimizer': optimizer, 'quantum_instance': quantum_instance}

            except Exception as e:
                print(f"Error: {e}")
                continue

# Print the best hyperparameters and score
print("Best hyperparameters:", best_params)
print("Best score:", best_score)```

 It seems that the ZZFeatureMap class in Qiskit is not compatible with scikit-learn's GridSearchCV due to the dynamic nature of the circuit construction.

To work around this issue, I have  manually loop over the parameter grid and perform the grid search without relying on scikit-learn's GridSearchCV
In this code, I manually loop over the parameter grid and instantiate the ZZFeatureMap, VQC, and other components. We Can fit the model, predict on the test set, and calculate the accuracy score. If the current model achieves a better score than the previous best model, we update the best score and best parameters.

@adekusar-drl
@adekusar-drl
It seems that the ZZFeatureMap class in Qiskit is not compatible with scikit-learn's GridSearchCV due to the dynamic nature of the circuit construction.
To work around this issue, I have  manually loop over the parameter grid and perform the grid search without relying on scikit-learn's GridSearchCV
In this code, I manually loop over the parameter grid and instantiate the ZZFeatureMap, VQC, and other components. We Can fit the model, predict on the test set, and calculate the accuracy score. If the current model achieves a better score than the previous best model, we update the best score and best parameters.

@GayatriVadaparty Great contact me on discord

from sklearn.model_selection import train_test_split
from qiskit import Aer
from qiskit_machine_learning.algorithms import VQC
from qiskit.circuit.library import ZZFeatureMap, RealAmplitudes
from qiskit.algorithms.optimizers import SPSA
from sklearn.metrics import accuracy_score
from sklearn.model_selection import cross_val_score
from hyperopt import hp, tpe, Trials, fmin

# Generate synthetic dataset for demonstration
X, y = make_classification(n_samples=100, n_features=2, n_informative=2, n_redundant=0, random_state=42)

# Split the dataset into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Define the feature map
num_qubits = X.shape[1]
feature_map = ZZFeatureMap(num_qubits, reps=1)

# Define the objective function
def objective(params):
    optimizer = SPSA(maxiter=100)
    quantum_instance = Aer.get_backend('qasm_simulator')

    model = VQC(feature_map, RealAmplitudes(), optimizer, quantum_instance=quantum_instance)
    model.set_params(**params)

    scores = cross_val_score(model, X_train, y_train, cv=5)
    avg_score = scores.mean()

    return -avg_score

# Define the search space for hyperparameters
param_space = {
    'n': hp.choice('n', [None, 1, 2]),  # Number of qubits for RealAmplitudes ansatz
    'quantum_instance': hp.choice('quantum_instance', [Aer.get_backend('qasm_simulator'), Aer.get_backend('statevector_simulator')])
}

# Perform hyperparameter tuning with Bayesian optimization
trials = Trials()
best = fmin(fn=objective, space=param_space, algo=tpe.suggest, max_evals=20, trials=trials)

# Get the best hyperparameters
best_params = {key: param_space[key][value] for key, value in best.items()}

# Train the VQC with the best hyperparameters
optimizer = SPSA(maxiter=100)
quantum_instance = Aer.get_backend('qasm_simulator')

model = VQC(feature_map, RealAmplitudes(), optimizer, quantum_instance=quantum_instance)
model.set_params(**best_params)
model.fit(X_train, y_train)

# Predict on the test set
y_pred = model.predict(X_test)

# Calculate accuracy score
score = accuracy_score(y_test, y_pred)

# Print the best hyperparameters and final score
print("Best hyperparameters:", best_params)
print("Final score:", score)```

To perform hyperparameter tuning using Bayesian optimization with the Qiskit Machine Learning package, we can use the BayesianOptimization class provided by the skopt library, which is compatible with scikit-learn's GridSearchCV and RandomizedSearchCV In this code, I have first define the parameter search space using a dictionary called param_space, which includes the possible values for the hyperparameters. Then,  define the feature map, create the VQC estimator, and instantiate the BayesSearchCV object, providing the VQC estimator and the parameter search space. We set the number of iterations (n_iter) and the number of cross-validation folds (cv).

Next, we call the fit method of the search object, passing the training data. The search object performs Bayesian optimization to find the best hyperparameters based on the specified search space.

After the hyperparameter tuning is complete, we can access the best hyperparameters using the best_params_ attribute of the search object and the corresponding best score using the best_score_ attribute.

Finally, we set the best hyperparameters to the VQC estimator, fit the model on the training data, predict on the test set, and calculate the accuracy score. I had some problems working on the TQDM part here

That's interesting, but it is unrelated to the original issue. Originally, the intention was to make QML algorithms scikit-learn compliant.

@adekusar-drl exactly which QML Algorithms is not mentioned I guess every algorithm or only VQC or QNN

@adekusar-drl
is there any method through which I Can Convert  script into a module: For example, if  script is named vqc.py, the directory structure should look like this:
my_package/
init.py
vqc.py

Basically by adding a new folder and corresponding files in it.

@adekusar-drl Do I Make a pull request with the Ipynb or you want to see it first

In this issue I don't see a place where a notebook would be required, honestly. So, if you have only a notebook, then please convert it to the code that will make the algorithm scikit-learn compatible.

@adekusar-drl Okay I have the code so how can we add this as a feature

import numpy as np
from qiskit import QuantumCircuit
from qiskit.algorithms.optimizers import Optimizer, OptimizerResult, Minimizer
from qiskit.primitives import BaseSampler
from sklearn.base import BaseEstimator, ClassifierMixin

from ...neural_networks import CircuitQNN, SamplerQNN
from ...utils import derive_num_qubits_feature_map_ansatz
from ...utils.loss_functions import Loss

class VQC(BaseEstimator, ClassifierMixin):
    def __init__(
        self,
        num_qubits: int | None = None,
        feature_map: QuantumCircuit | None = None,
        ansatz: QuantumCircuit | None = None,
        loss: str | Loss = "cross_entropy",
        optimizer: Optimizer | Minimizer | None = None,
        warm_start: bool = False,
        initial_point: np.ndarray | None = None,
        callback: Callable[[np.ndarray, float], None] | None = None,
        sampler: BaseSampler | None = None,
    ) -> None:
        num_qubits, feature_map, ansatz = derive_num_qubits_feature_map_ansatz(
            num_qubits, feature_map, ansatz
        )
        self.num_qubits = num_qubits
        self.feature_map = feature_map
        self.ansatz = ansatz
        self.circuit = QuantumCircuit(self.num_qubits)
        self.circuit.compose(self.feature_map, inplace=True)
        self.circuit.compose(self.ansatz, inplace=True)
        self.neural_network = SamplerQNN(
            sampler=sampler,
            circuit=self.circuit,
            input_params=self.feature_map.parameters,
            weight_params=self.ansatz.parameters,
            interpret=self._get_interpret(2),
            output_shape=2,
            input_gradients=False,
        )
        self.loss = loss
        self.optimizer = optimizer
        self.warm_start = warm_start
        self.initial_point = initial_point
        self.callback = callback

    def fit(self, X: np.ndarray, y: np.ndarray) -> VQC:
        self._validate_input(X, y)
        self.neural_network.set_interpret(self._get_interpret(self.num_classes), self.num_classes)
        function = self._create_objective(X, y)
        self._minimize(function)
        return self

    def predict(self, X: np.ndarray) -> np.ndarray:
        self._validate_X(X)
        return self.neural_network.forward(X)

    def score(self, X: np.ndarray, y: np.ndarray) -> float:
        self._validate_input(X, y)
        y_pred = self.predict(X)
        return np.mean(np.argmax(y, axis=1) == np.argmax(y_pred, axis=1))

    def _get_interpret(self, num_classes: int):
        def parity(x: int, num_classes: int = num_classes) -> int:
            return x % num_classes

        return parity

    def _validate_input(self, X: np.ndarray, y: np.ndarray) -> None:
        # Validation logic
        pass

    def _create_objective(self, X: np.ndarray, y: np.ndarray) -> Callable:
        # Objective function creation logic
        pass

    def _minimize(self, objective: Callable) -> OptimizerResult:
        # Minimization logic
        pass

    def _validate_X(self, X: np.ndarray) -> None:
        # Validation logic for input data
        pass

    @property
    def num_classes(self) -> int:
        # Get the number of classes
        return 2```


Feature: Add scroll-based highlighting to floating TOC

📚 Context
Improving the user experience is paramount. With many  pages having a long list of content, it's often helpful for users to have a visual cue on their progress through the content. This enhancement is designed to provide a dynamic highlight in the floatingNav on the right as users scroll through the page.
🧠 Description of Changes

Adjusted the intersection observer's root margin to better detect when headings are at the viewport's center in floatingNav.js.
Modified CSS styling for .activeLink to give a prominent visual cue. This involves text bolding, a subtle scaling effect, and an accompanying circle to highlight the active link.

https://github.com/streamlit/docs/assets/20672874/03eac5e7-eeba-4ea6-938a-42c8a1bd57ba
Revised:

Current:

💥 Impact

Size:

[ ] Small
[x] Not small

🌐 References

[ ] Notion

Contribution License Agreement
By submitting this pull request you agree that all contributions to this project are made under the Apache 2.0 license.

Since the existing scroll-based highlighting has been restored, I'll go ahead and close this PR per the comment above.


fix platform power return unit

This PR is to fix the issue regarding platform power reported in the slack channel as well as my direct experience in https://github.com/sustainable-computing-io/kepler/issues/1466.
I have found the different handling between component power and platform power in the model package.
Power model return power in joule unit in float. However, we handle the power in millijoule in Kepler.
Component power has been converted correctly by GetComponentPower in utils module. On the other hand, platform power is used as-is.
After fix:

As seen in the above validation, there are still more points to investigate or fix.
I have stressed 70% of CPU in a single CPU (it supposes to use 700ms).
The most critical part is the BPF CPU time. As seen above, the total CPU time is much higher than stress time.
However, as seen in the top two panel which are the power meters, the power is significantly increased at the stress time.
Another point need concern is the model that are being used. The default one is 4 cores which produces maximum power at around 200W. In the above result, I changed to use 32 cores model. We need to change default power model to the largest one on the estimator case.
Signed-off-by: Sunyanan Choochotkaew<EMAIL_ADDRESS>

@dave-tucker Thank you so much for the review.
I pushed the changes regarding your review. Please confirm here.


refactor(semantic): transform checker: change symbol name mismatch error

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#5075  👈
#5074
main

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

Join @overlookmotel and the rest of your teammates on  Graphite


Update tslib.pyx

https://github.com/pydata/pandas/issues/9513
pd.NaT.date() was returning datetime.date(1, 255, 255)
it raises now a ValueError

needs a test. further needs to validate that other appropriate methods either raise/return something reasonable.

closing pls reopen if/when updated


⚠ Bofrost.at has degraded performance

In 00ad59a, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2448 ms

Resolved: Bofrost.at performance has improved in b211e90.


App improvements & suggestions

I acknowledged that this app is being rebuilt and under development but im giving a early list of stuff to do for a better approach for your app
First App overall in current state

Overall the app does its job but it feels really limited to use and is not a app that catches interest , first of all going through the sections explore and favorites the animation art added aren't useful what so ever its probably consuming and wont add much effect i would suggest removing it , second i would recommend adding mal sync , this shouldn't be slept on or further delayed because it limits the app way more , lets assume you added mal sync now then with it you should change the apps whole ui into a mal client style, this means when someone logins their account they have a whole page that shows what is planned, watching , dropped etc all in sections within 1 page, then the current home page in your app can be named explore and people can search from with in there, here is a example of how it should be

the reason why it should be like this is because apps like this catches most interest ( and were the ones that got most popular ) and is extremely useful, now to continue on the reason why the app feels limited with all the stuff i listed above their is also a reason which is the app sets you up in boundaries without any settings just a box , so people with experience with previous app will quickly drop it off , you will add settings most probably but just a heads up, what settings should include ?  a small theme customizer , in app updater , show filler episodes , hide dubbed anime it can go on for longer but to make it easier for both of us i got something you can benefit from greatly check this app out it written with kotlin and offers the same job you can take a look around it and its open source so you can look at the code and maybe use some of it and one more app here now to continue with the app i want to note something about its name and logo , both can have improvements , the name is always urs to choose but lets state some thing apps with anim on the start is generic now , the logo is fine you could make the A in the logo a little bigger and more straight , but its just my opinion on this, if you have the commitment and want to make the app good please heed this issue, i joined your discord and ill add more to this in time , and maybe its to much but im no developer this app is being rebuilt so its time to receive all of this , to continue on the matter Sources , i believe the app should have the main sources for now that should be Gogoanime and zoro you can try and code torrents into streaming but im no expert , i seen that downloading was suggested, lots of apps have downloading feature but once someone downloads more then 2 at once it all goes to shit so be ware of that , have a bulk delete and download option let people que downloads, you can also add support to external download managers for some.

finally Bugs , i read your discord chat and you got some input on that by other users so i wont provide much here but i did notice when you go inside a show there are these weird lines , im guessing its a bug

and that's it take care man and hopefully you become a good dev one that listens to the community
good luck..

I will try to do my best with these suggestions :). I am closing this and will get back to this for anything.


Templates using numbers that don't evenly divide dimensions don't go to edge of display

Environment
Windows build number: Microsoft Windows [Version 10.0.18363.720]
PowerToys version: v0.15.2
PowerToy module: FancyZones

Steps to reproduce

Set space around zones to 0 (occurs with all space sizes but is most visible with a space size of 0)
Select columns template (rows template also works)
Keep incrementing the number of zones and watch the rightmost edge (bottom edge if using rows template)

Expected behavior
Template's columns/rows should go all the way to the edge of the screen
Actual behavior
Gaps of varying sizes occur between the right-most window and the edge of the display.
Visibly occurs on the following column counts (checked up to 40): 6, 7, 12, 13, 14, 15, 17, 18, 19, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39.
It appears this is specifically occurring on numbers that don't evenly divide the width of the monitor (my monitor is 3440 pixels wide). Also happens with rows based on the height of the monitor.
Screenshots
A particularly bad example:

Hi @napostrophe
thank you for your feedback.
The problem you describe is already fixed in master and the fix will be available in the 0.16 release.

Oh I didn't realize. Thanks :^)


[comp:drawer] 支持抽屉尺寸

[x] I have searched the issues of this repository and believe that this is not a duplicate.

What problem does this feature solve?
新增支持抽屉尺寸大小
What does the proposed API look like?

名称
说明
类型
默认值
全局配置
备注

size
抽屉尺寸
'sm' | 'md' | 'lg'
sm
-
-

宽高和size会出现冲突


fix(scripts): fix top-level await issue

In previous PR #338 we added await to yargs in blockUser script. This is causing the following error when script is being executed:

nodejs SyntaxError: await is only valid in async functions and the top level bodies of modules

The type of yargs is somehow Sth | Promise<Sth> hence the await. We try to use Promise.resolve().then() to tackle this.

coverage: 83.371%. remained the same
when pulling 8d9cd48a9ff16d76689245c29361db2eec4da132 on fix-blockuser-script
into 25f2df4284a8149ba98dd122f8b02d1741bdaae7 on master.


Ignore emails when using @ token

how to ignore email entries when using @ token? Just use: delimiter: '(^|\\s)@' option. Please add it to description or fix issue right in plugin code.

That is a good catch!


dir returns sdk version

This PR allows calls to __dir__ to include the SDK version being used.  This is a prereq for having engine behavior depend on the SDK version, ex. when we introduce instance initialization.

LGTM! It looks like some extra code might have come along for the ride.
Also: do we know that the version is being properly set when we do a new release?

Yes, it's being properly set. You can see it when you run shippy.


[Bug]: lakectl local commit commits staged changes outside of its directory

What happened?
What actually happened, including error codes if applies.
Steps to Reproduce:

Ensure lakefs://repo/main is dirty but has no "directory" path xyzzy.

lakectl local init lakefs://repo/main/xyzzy

touch x

lakectl local commit --message 'add xyzzy for lulz'

lakectl diff lakefs://repo/main{~,}:
Left ref: lakefs://ariels-repo/main~
Right ref: lakefs://ariels-repo/main
+ added .hidden-foo
+ added foofoo
+ added xyzzy/x

These 2 files were added by lakectl local because I added them elsewhere.
Expected behavior
lakectl commit should fail with an error about the branch being dirty, or lakectl should be more like Git LFS and not hide changes from me.
lakeFS version
No response
How lakeFS is installed
No response
Affected clients
No response
Relevant log output
No response
Contact details
No response

Requires @treeverse/product specification

Expected behavior

Fail the commit
Print an error message:

error: The branch you are trying to commit to contains uncommitted changes outside the lakeFS path your local directory '<DIR_NAME>' is synced with.
To proceed, use the --force option.

add a --force -f flag lakectl local commit

@eladlachmi @arielshaqed @talSofer making sure we understand the implications of this since it is a breaking change.


Hoist function exports to top of module body in CJS/AMD/UMD

This changes our emit for CommonJS, AMD, and UMD so that exports for exported function declarations are hoisted to the top of the transformed module body. There is a minor impact on the order of keys in the exportedNames_1 map synthesized for SystemJS modules as a consequence of this change, but it has no impact to runtime behavior.
Fixes #39853

I just merge conflicted this via #57668; you'll have to merge main to delete some of these baselines. (sorry!)

@rbuckton Is there an option to disable this behavior while generating CommonJS?

@rbuckton Is there an option to disable this behavior while generating CommonJS?

No, there is not. It's there a reason you would need to disable it?

Reanimated Babel plugin does code transformations that break hoisting - function declarations become variable declarations with assignments. Therefore with this change we also have to move the exports to the bottom of file so the values are not exported as undefined. It's not really a blocker, but an inconvenience nevertheless.


[Feature Request] TimePicker step property

Existing Component
Yes
Component Name
TimePicker el-time-picker
Description
Just like it is possible for the TimeSelect, I would love a step property so that I only show every 5th minute in the TimePicker instead of every minute. Thank you

Isn't there already a step?

@goatandsheep the step is for time-select only. It is a different component.

请支持step属性，这个真的很有必要

这个问题需要修复 很有必要 已经很多人有这个需求了


fix: allow clicks on select

fix
https://github.com/ismail9k/vue3-carousel/issues/292
There was a tag omission in the previous correspondence.
I don't think there are any more tags I want to click on other than this one ...
Previous PR
https://github.com/ismail9k/vue3-carousel/pull/260

It seems that it has already been fixed, so I will close it


Derive clone for UnQLiteVm

I think UnQLiteVm needs a Clone trait for the following scenario:
I have a Jx9-script that can search in DB and return some result. Multiple clients want to use it at the same time (asynchronously) to get data from DB. They must somehow pass their search parameters to script. The only way I found is to use add_argument method, but it requires to have a mutable reference to UnQLiteVm. So I need to make a Mutex or RfCell and still each client will lock the UnQLiteVm instance.
The simple solution is to spawn UnQLiteVm on each request, but I'm afraid that UnQLite::complie() will cause unnecessary CPU and IO usage. But with this trait we can copy comiled version of UnQLiteVm for each client -- not much overhead.
Also I've updated upstream repo to current version, all tests have passed.

i'm glab to merge it if matching your case.

published.


[Bug] Injection broken after Canary 123373 c05ebe3 update

Describe the Bug
Injection broken after Canary 123373 c05ebe3 update
To Reproduce

Update to the latest canary version
Reinject BD

Expected Behavior
BD should inject fine
Discord Version
Canary

Can confirm on my installation of canary
Canary 123373 (c05ebe3)
Host 1.0.45
Windows 10 64-Bit (10.0.19044)

Confirm on my canary as well:
Canary 123387 (14782d3)
Host 1.0.45
Windows 10 64-Bit (10.0.22000)

Same here
Canary 123387 (14782d3)
Host 1.0.45
Windows 11 64-Bit (22000.593)

Same goes here
Canary 123387 (14782d3)
Host 1.0.45 Windows 10
64-Bit (10.0.22000)

Same here:
Canary 123387 (14782d3)
Host 1.0.45
Windows 11 64-Bit (10.0.22000)

Same here
Canary 123387 (14782d3)
Host 1.0.45
Windows 11 64-Bit (10.0.22000)

Same here
Canary 123387 (14782d3)
Host 1.0.45
Windows 11 64-Bit (10.0.22593)

Same here
Canary 123387 (14782d3)
Host 1.0.45
Windows 10 64-Bit (10.0.19044)

same
Canary 123387 (14782d3)
Host 1.0.45
Windows 10 64-Bit (10.0.19043)

It's not very useful to post the same thing over and over again. Just reacting with a 👍 to the initial message is enough.

It's not very useful to post the same thing over and over again. Just reacting with a 👍 to the initial message is enough.

You're right, i was going to say that now.

Fixed via #9ee2ee6.


Owner doesn't show up after changing the owner

Steps to reproduce:

Go to the Table your Team is the owner
Change the Owner to your user
Refresh the page

Expected Result:
Owner changed to your User
Actual Result:
Owner shows empty

Request Method: PATCH
Status Code: 200 OK
Remote Address: <IP_ADDRESS>:443
Referrer Policy: strict-origin-when-cross-origin```

```{"id":"84ab7a06-d5f4-4560-a3bd-397fe8251982","name":"stg_listing_reports","description":"Staging table to compute the total tickets and revenue generated per listing at a venue.","href":"http://<IP_ADDRESS>:8585/api/v1/tables/84ab7a06-d5f4-4560-a3bd-397fe8251982","tableType":"Regular","fullyQualifiedName":"aws_redshift.public.stg_listing_reports","columns":[{"name":"list_id","dataType":"INT","dataLength":1,"dataTypeDisplay":"int","fullyQualifiedName":"aws_redshift.public.stg_listing_reports.list_id","tags":[],"constraint":"NULL","ordinalPosition":1},{"name":"seller_id","dataType":"INT","dataLength":1,"dataTypeDisplay":"int","fullyQualifiedName":"aws_redshift.public.stg_listing_reports.seller_id","tags":[],"constraint":"NULL","ordinalPosition":2},{"name":"venue_id","dataType":"INT","dataLength":1,"dataTypeDisplay":"int","fullyQualifiedName":"aws_redshift.public.stg_listing_reports.venue_id","tags":[],"constraint":"NULL","ordinalPosition":3},{"name":"num_tickets","dataType":"INT","dataLength":1,"dataTypeDisplay":"int","fullyQualifiedName":"aws_redshift.public.stg_listing_reports.num_tickets","tags":[],"constraint":"NULL","ordinalPosition":4},{"name":"total_price","dataType":"INT","dataLength":1,"dataTypeDisplay":"int","fullyQualifiedName":"aws_redshift.public.stg_listing_reports.total_price","tags":[],"constraint":"NULL","ordinalPosition":5}],"owner":{"id":"bf0a8a0a-075a-45c7-867c-3de8e290a621","type":"user","name":"harsha","href":"http://<IP_ADDRESS>:8585/api/v1/users/bf0a8a0a-075a-45c7-867c-3de8e290a621"},"database":{"id":"bfb736c4-88f9-411d-9c79-230d535fa76f","type":"database","name":"aws_redshift.public","href":"http://<IP_ADDRESS>:8585/api/v1/databases/bfb736c4-88f9-411d-9c79-230d535fa76f"},"tags":[{"tagFQN":"Tier.Tier4","labelType":"Manual","state":"Confirmed"}]}```
Patch call is successful

The issue with root cause #1154,  For the owner placeholder we are using displayName but if the owner is admin then we are not getting disaplyName that's why the owner name is not showing up.
Closing this issue as its taken care of by #1166


Generic reconciler keeps failing to update adapter if the name of the current object doesn't match the desired value

Context
In the generic adapter reconciler (pkg/reconciler/), we have this pattern where we

Try to find an existing adapter, based on a combination of labels and ownerReference (source)

If it exists, compare its state with the desired state (source)

If the two states differ, update the in-cluster state (source)

Problem
There is a flaw in that logic: if for any reason the metadata.name differs between the current in-cluster adapter and its desired state (e.g. we changed our naming pattern and rolled out the change), the comparison will return false, but the reconciler will enter a perpetual failure loop because it can't find an existing object matching the desired name.
👉 Right now the situation is unlikely to occur because all adapter names are deterministic, but this could become a problem if we ever start including random suffixes into our adapter names (e.g. using metadata.generateName).
Example
Imagine that an adapter with the name logs-alerting already exists and matches the labels and owner expected by a parent SlackTarget instance.
Now imagine that we roll out a change where the desired name becomes slacktarget-logs-alerting (component type prepended).
The reconciler will compare the current state of logs-alerting with the desired state of slacktarget-logs-alerting. If they don't match, it will attempt to update an object called slacktarget-logs-alerting, but such object doesn't exist in the cluster:
Events:
  Type     Reason               Age                  From                    Message
  ----     ------               ----                 ----                    -------
  Warning  FailedAdapterUpdate  43s (x15 over 2m5s)  slacktarget-controller  Failed to update adapter Service "slacktarget-logs-alerting": services.serving.knative.dev "slacktarget-logs-alerting" not found

The fix should be trivial.
Just before performing the semantic comparison, we could set the name of desired to the name of current to

exclude it from the comparison (if only the name differs, we don't want to update the adapter in a loop)
avoid the aforementioned "object not found" error if we reach the point where we try to update the live object (Kn Service or Deployment)

// We may have found an existing adapter object that is owned by the
// component instance, but under a different name, e.g. created by an
// older version of TriggerMesh.
desiredAdapter.Name = currentAdapter.Name

As a matter of fact, we already do something similar with the resourceVersion:
https://github.com/triggermesh/triggermesh/blob/212492fee3b4a84bfeddd09dac99df1817546886/pkg/reconciler/reconcile.go#L351-L353

Assigning myself.
The merge of #704 makes this more urgent because we may see existing objects that were created under a different naming convention, and we want to reconcile these objects without having to recreate them.


Add twitter account for each authors

Suggested format below. You can add a new line like so:
## Vue Stripe

Stripe Checkout & Elements for Vue.js

 - [Website](https://vuestripe.com)
 - [GitHub](https://github.com/vue-stripe/vue-stripe)
 - Author: [@jofftiquez](https://github.com/jofftiquez)
+ - Twitter: [@jrtiquez](https://twitter.com/jrtiquez)

The task also includes stalking the author so do your best! :D

i would like to do this

Thanks @omsurase!

The issue is still open for other author's twitter account

I would like to do this!


Rework dependency build operation instrumentalisation

Initial work on changing download build operation instrumentation by replacing BuildOperationExternalResource with wrapping resource reads in ProgressLoggingExternalResourceAccessor and introducing new DefaultBuildOperationExecutor.start() method.
TODO: cleanup on api / more test coverage
Initial commits for requesting feedback from @adammurdoch . not considered ready to be merged into master.

I've reworked the logic to offer a withResource method to the ExternalResourceAccessor. Tbh. this seems not as nice as the initial implementation in master for decorating the download event as it also required to rework ExternalResourceRepository. Also it doesn't capture the connect which might be nice as it produces more realistic data (duration of a download event) than the pure inputstream reading.
@adammurdoch I'm thankful for any hint on this. Do you think this is the way to go? Again I appreciate any further pointers to get this finally right.

As discussed, I am closing this as outdated.


Add readTypeOfValue

This improves csv-import a bit since it allows us to skip allocation of
values in the struct when we only want the type.

@cmasone-attic since you are looking at this area today

lgtm

clever.


Cloud66 Request to add badge to website and GitHub

Summary
Cloud66 has asked if we would be willing to add their badge to the footer of the website for Human Essentials and add a badge or mention of Cloud66 support to Github, likely in the README, to help show that they are supporting the project.
I am happy to do the PRs for these changes if y'all are ok with them. Also happy to chat if y'all have any questions.
Things to consider
Consult with the core team on placement of the requested items.
Criteria for Completion

[ ] The GitHub repo for Human Essentials mentions Cloud66 support or includes a badge
[ ] The humanessentials.app page includes the Cloud66 badge.

This fell through the cracks.  To be discussed on Sunday, perhaps?

@CraigJZ Is this still important -- also there's a rumour about possibly moving to aws?

@CraigJZ Is this still important -- also there's a rumour about possibly moving to aws?

@cielf I'm sorry I missed this. I haven't heard about a move to aws but, if we are going to continue with Cloud66, this is something they would like.

It appears we are moving.  We will readdress this if the plan changes.


App generates 54 errors

Hello,
I downloaded your project as a zip and after running 'pod install' with the appropriate Podfile, Xcode gave me 54 errors. I do not believe that this is normal. I am running the latest version of Xcode.

Thanks!
Nick

Yeah I got these errors too!

I forked the project and updated it for swift3 here: https://github.com/ShotSkydiver/MaterialCardView


Dev branch cpu training problem (with conv and pool)

After merging the PR #590, today I am trying to solve the problem that the mnist cnn hangs as reported in PR #589.
When I run mnist_cnn after changing to cpu, it hangs. So the training has some problem.

It does not hangs, it is just too slow, much slower than the previous version

Using the mnist_cnn.py in CPU training:
The dev branch takes 14.469275s for one batch of training and one batch of evaulation.
The master branch takes 0.08s for one batch of training and one batch of evaulation.
So maybe something wrong.

I profiled the time for different operations in mnist.py:
conv1: 0.5253171920776367
relu: 0.015198707580566406
pooling1: 0.0033032894134521484
conv2: 2.7908501625061035
relu: 0.004743099212646484
pooling2: 0.0012176036834716797
flatten: 0.00013828277587890625
linear1: 0.0011014938354492188
relu: 0.0008671283721923828

I think need to double check the conv2d

I have tried using GCC OpenMP and Intel TBB (threading building block) when complile DNNL from source.
The time is extremely slow (normal time per epoch should be around a minute), but the training loss results are correct.

GCC OpenMP

root@3edb30e30b08:~/dcsysh/singa/examples/autograd# python3 mnist_cnn.py
Starting Epoch 0:
Training loss = 564.547180, training accuracy = 0.800644
Evaluation accuracy = 0.931591, Elapsed Time = 1348.363244s
Starting Epoch 1:
Training loss = 229.964905, training accuracy = 0.922892
Evaluation accuracy = 0.959535, Elapsed Time = 1344.685418s
Starting Epoch 2:
Training loss = 163.646332, training accuracy = 0.944837
Evaluation accuracy = 0.973758, Elapsed Time = 1346.530425s
Starting Epoch 3:
Training loss = 135.699615, training accuracy = 0.954526
Evaluation accuracy = 0.970152, Elapsed Time = 1346.398193s
Starting Epoch 4:
Training loss = 115.944962, training accuracy = 0.962096
Evaluation accuracy = 0.968750, Elapsed Time = 1349.933991s
Starting Epoch 5:
Training loss = 102.581963, training accuracy = 0.965548
Evaluation accuracy = 0.976963, Elapsed Time = 1343.627475s
Starting Epoch 6:
Training loss = 91.995560, training accuracy = 0.969701
Evaluation accuracy = 0.980168, Elapsed Time = 1345.709435s
Starting Epoch 7:
Training loss = 85.334785, training accuracy = 0.971051
Evaluation accuracy = 0.977664, Elapsed Time = 1342.384448s
Starting Epoch 8:
Training loss = 81.609375, training accuracy = 0.972018
Evaluation accuracy = 0.981571, Elapsed Time = 1345.214866s
Starting Epoch 9:
Training loss = 76.690147, training accuracy = 0.974203
Evaluation accuracy = 0.977364, Elapsed Time = 1354.111479s

TBB (threading building block)

root@3edb30e30b08:~/dcsysh/singa/examples/autograd# python3 mnist_cnn.py
Starting Epoch 0:
Training loss = 566.089539, training accuracy = 0.800527
Evaluation accuracy = 0.938201, Elapsed Time = 1571.624848s
Starting Epoch 1:
Training loss = 229.882874, training accuracy = 0.923192
Evaluation accuracy = 0.957833, Elapsed Time = 1569.219801s
Starting Epoch 2:
Training loss = 164.734573, training accuracy = 0.945137
Evaluation accuracy = 0.955929, Elapsed Time = 1567.359108s
Starting Epoch 3:
Training loss = 132.956802, training accuracy = 0.955310
Evaluation accuracy = 0.968550, Elapsed Time = 1572.159664s
Starting Epoch 4:
Training loss = 117.263237, training accuracy = 0.960646
Evaluation accuracy = 0.969151, Elapsed Time = 1570.090345s

I have found that the reason, the format of the memory tag should be any in order to use the direct algorithm, other the implementation will silently fall back to an explicit GEMM algorithm which is slower:
https://intel.github.io/mkl-dnn/dev_guide_convolution.html
An example code of the correct implementation is:
https://intel.github.io/mkl-dnn/cpu_cnn_training_f32_8c-example.html
@dcslin I will try to modify the code myself first. If I find it too complex I will ask for your help because you are more familiar with the dnnl library. Thanks!

@dcslin
I have tried to reorder the format before passing into conv, but seems I am not familiar with the DNNL API and too difficult to debug
See the reorder descripter I was trying and the new memory descriptor I added:
https://github.com/chrishkchris/singa/blob/conv_reorder/src/model/operation/convolution.cc
From my understanding, the key concept and the step-by-step-prodcedure is:

Create memory decriptor of tag::any format of conv2d for the input, weight, bias, output
Create the conv primitive descriptor based on the memory decriptor created above
Reorder the input and weight format to the tag::any format
the reordered format input and weight can be passed into the conv for processing

Could you help to make this work, thanks!

HI @chrishkchris , Thank you for raising the issue. I have tried on your branch, the function 'order' is behaving very weird. It seems that it does not work well with the memory we passed in.

@dcslin I just realized that should use the cpp example instead of c example because the API are different.
https://intel.github.io/mkl-dnn/cnn_training_f32_8cpp-example.html

HI @chrishkchris , Thank you for raising the issue. I have tried on your branch, the function 'order' is behaving very weird. It seems that it does not work well with the memory we passed in.

yes, sorry, by reading cpp example there is no need to create a reorder primitive_desc in cpp
the example code use just:
reorder(conv_user_src_memory, conv_src_memory)
to convert the format from source to conv kernel format

HI @chrishkchris , Thank you for raising the issue. I have tried on your branch, the function 'order' is behaving very weird. It seems that it does not work well with the memory we passed in.

@dcslin
I updated the code, the reorder primitive is moved to here:
https://github.com/chrishkchris/singa/blob/conv_reorder/src/model/operation/convolution.cc#L162
now the error log is
[ RUN      ] DNNLOperation_Convolution.Forward
pass0
pass1
unknown file: Failure
C++ exception with description "could not create a memory" thrown in the test body.
[  FAILED  ] DNNLOperation_Convolution.Forward (0 ms)

Hi @chrishkchris , FYI
https://github.com/dcslin/singa/blob/conv_reorder/src/model/operation/convolution.cc

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000~microsec).
However, after some modification to the example code(just introducing Singa Tensor https://github.com/dcslin/singa/commit/06ec6ce8453f524640c704695d30d3f39fca0469), I still can get reasonable performance(conv forward in 5000~ microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000~microsec).
However, after some modification to the example code(just introducing Singa Tensor dcslin@06ec6ce), I still can get reasonable performance(conv forward in 5000~ microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.

maybe can try adding s.wait() after each reorder, the stream process them one by one

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000~microsec).
However, after some modification to the example code(just introducing Singa Tensor dcslin@06ec6ce), I still can get reasonable performance(conv forward in 5000~ microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.

I run your example code but did not find any problem, it display mytestok. The last segmentation fault of "double free" is due to freeing of variables.
[ RUN      ] MYTEST.Forward
[total]Time difference = 58228[mu s]
[avg]Time difference = 582[mu s]
mytestok
double free or corruption (!prev)
Aborted (core dumped)

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000~microsec).
However, after some modification to the example code(just introducing Singa Tensor dcslin/singa@06ec6ce), I still can get reasonable performance(conv forward in 5000~ microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.

I run your example code but did not find any problem, it display mytestok. The last segmentation fault of "double free" is due to freeing of variables.
[ RUN      ] MYTEST.Forward
[total]Time difference = 58228[mu s]
[avg]Time difference = 582[mu s]
mytestok
double free or corruption (!prev)
Aborted (core dumped)

do you how to fix this?

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000microsec).
However, after some modification to the example code(just introducing Singa Tensor dcslin/singa@06ec6ce), I still can get reasonable performance(conv forward in 5000 microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.
I run your example code but did not find any problem, it display mytestok. The last segmentation fault of "double free" is due to freeing of variables.
[ RUN      ] MYTEST.Forward
[total]Time difference = 58228[mu s]
[avg]Time difference = 582[mu s]
mytestok
double free or corruption (!prev)
Aborted (core dumped)
do you how to fix this?
Don't know, I tried by turning the tensor to pointer, it even cannot run, displaying:

 [ RUN      ] DNNLOperation_Convolution.Forward
free(): invalid next size (normal)
Aborted (core dumped)

@chrishkchris , in fact, even disabling reorder part, the performance is still the same

Hi @chrishkchris , I am still working on this issue, but I am encountering something very weird.
I borrow the code from dnnl example and testing result shows similar performance compared to mkldnn(conv forward in 5000microsec).
However, after some modification to the example code(just introducing Singa Tensor dcslin/singa@06ec6ce), I still can get reasonable performance(conv forward in 5000 microsec). But the weird part is, the result is not stable, out of 10 times testing, segmentation fault appear ~6 times.
I run your example code but did not find any problem, it display mytestok. The last segmentation fault of "double free" is due to freeing of variables.
[ RUN      ] MYTEST.Forward
[total]Time difference = 58228[mu s]
[avg]Time difference = 582[mu s]
mytestok
double free or corruption (!prev)
Aborted (core dumped)
do you how to fix this?

OK now, I tried by turning the tensor to pointer.
  Tensor *in = new Tensor(Shape{batch, in_chan, image_h, image_h});
  Tensor *out = new Tensor(Shape{batch, out_chan, out_size, out_size});
  Tensor *weights = new Tensor(Shape{out_chan, in_chan, ker, ker});
  Tensor *bias = new Tensor(Shape{out_chan});
  in->SetValue(1.0f);
  weights->SetValue(1.0f);
  bias->SetValue(1.0f);

Now it display:
[----------] 1 test from MYTEST
[ RUN      ] MYTEST.Forward
[total]Time difference = 51943[mu s]
[avg]Time difference = 519[mu s]
mytestok
[       OK ] MYTEST.Forward (53 ms)
[----------] 1 test from MYTEST (53 ms total)

so I suspect that when it destruct dnnl memory object, it will free the memory from in->block()->mutable_data …
For the same reason, I suspect that in the constructor of dnnl memory object, it will reallocate memory based on the pointer given.
The solution is to avoid passing the block memory pointer to the dnnl memory constructor, instead we copy the block memory to the dnnl memory after dnnl memory object is constructed.

will it cost double memory usage?

somehow i fixed conv forward,
https://github.com/dcslin/singa/commit/8e85fdc8d6efd6bcae11ff45217471f784cd2462
it's now in the magnitude of ~5000microsec which is similar to mkldnn.
I see backward also has problem, still checking

somehow i fixed conv forward,
dcslin@8e85fdc
it's now in the magnitude of ~5000microsec which is similar to mkldnn.
I see backward also has problem, still checking

I have read the updated code
so the error is caused by dnnl::prop_kind::forward?

somehow i fixed conv forward,
dcslin/singa@8e85fdc
it's now in the magnitude of ~5000microsec which is similar to mkldnn.
I see backward also has problem, still checking

I have read the updated code
so the error is caused by dnnl::prop_kind::forward?

not sure

@chrishkchris could you please help to test the performance of this branch? it looks ok at my side.
let me know if the performance is ok?
I will clean the code

@chrishkchris could you please help to test the performance of this branch? it looks ok at my side.
let me know if the performance is ok?
https://github.com/dcslin/singa/tree/dnnl-perf-issue
I will clean the code

Thanks a lot! I will test and let you know

@dcslin Thank you so much!
It is much much faster than before, I will wait for 10 epoch to make sure that the training loss is also okat
root@71b7b910ae0b:~/dcsysh/singa/examples/autograd# python3 mnist_cnn.py
Starting Epoch 0:
Training loss = 577.733337, training accuracy = 0.796858
Evaluation accuracy = 0.937300, Elapsed Time = 139.402045s

@dcslin I guess you will need to change the test_operation_convolution.cc back

@dcslin I guess you will need to change the test_operation_convolution.cc back

yes sure

The code is great! It resolved the problem. I think you can send the PR

The code is great! It resolved the problem. I think you can send the PR

thanks for testing


Search results include pages with links including the search term

When you search our docs, if a page contains a link containing the keyword, it shows up in the results. For example, searching "mysql" will show the CockroachDB home page in the results because it contains the "Migrate from MySQL" link. These types of results should either be excluded totally from results or should be strongly de-ranked.

I believe we just need to update the algolia config to exclude these cases, if that's possible: https://github.com/algolia/docsearch-configs/blob/master/configs/cockroachlabs.json

@j-low, could use your input here. Looks like we're already excluding links in "see also" sections: https://github.com/algolia/docsearch-configs/blob/master/configs/cockroachlabs.json#L35. Would there be an easy way to exclude pages that otherwise just include links with the search term? Feel free to point me to where to look to try to answer this myself.

@jseldess I think this is what we're looking for.  I'm going to file a PR to their repo to test it out so we should know if it's successful in the usual amount of time (~1 day).  I'm fairly sure that's the option we're looking for so if we're still seeing issues there may be more changes that need to be made to the config (that are not clear to me at the moment).

Hmm, I read that option differently. Seems to not be about links as much as which urls to start scraping at, which is why we have each version directory listed?

@jseldess the option indicates whether or not to scrape the URL at the start URL location which is what is being returned in this case and  is causing the strangeness.  It's not about links but I'm wondering if we really want our config to exclude links?  We would either have to apply a broad exclusion rule to all links (which seems prone to side effects) or collecting a list of instances in which we do/don't want links scraped and distilling some rule(s) from those cases.
The current PR to Algolia would handle the case of not having the landing page show up in the results.

Ah, I see. I think that's definitely a great step to take. I do think that it would be great to NOT return pages if the search terms are only mentioned in links on those pages. But I understand that's not trivial to accomplish and probably not worth looking at right now.

Agreed.  I don't have much of an idea how to approach that in the config-based context we're currently on but I do wonder about the future when we theoretically have more knobs to fiddle with when we've migrated to the self-admin'd context.

This particular issues was resolved, so closing.


issue for [ slate start ] or [ slate deploy ]

Invalid theme id for undefined: undefined theme_id must be an integer or "live".
my config.yml file :
development:""
password:"mypass"
theme_id:12344546634
store:"myshop.myshopify.com"
ignore_files:""
executed : [ slate migrate ] for Brooklyn theme.
console output:
slate start
Using gulpfile<EMAIL_ADDRESS>Starting 'default'...
Starting 'deploy'...
Starting 'validate:id'...
Invalid theme id for undefined: undefined theme_id must be an integer or "live".
I tried  "live" and theme id as integer.

Hi, it's work now. I reinstalled nodejs(and npm). I don't know what the problem was. I created a new shopify/slate project outside of my main project. After I drag-n-drop it into my project. I use "live" as theme id.
NOTE: when you 'migrate' a theme, config.yml file has 1 line only 404: Not Found.
my config.yml :
development:
password: 5df ......... 21a42
theme_id: "live"
store: my-shop.myshopify.com
ignore_files:
#- settings_data.json # Uncomment this line to avoid resetting theme settings
production:
password:  5df ......... 21a42
theme_id: "live"
store: my-shop.myshopify.com
ignore_files:
#- settings_data.json # Uncomment this line to avoid resetting theme settings


rename github.com/Sirupsen/logrus -> github.com/sirupsen/logrus

Since version 1.0.0 sirupsen changed his github username to downcase.
Some references:
https://github.com/golang/dep/issues/1010
https://github.com/sirupsen/logrus/issues/570

LGTM


Limit queries depending on passed batch sizes for local-database readers

(description copied from MIG-1077:)
We are using offset and limit to request the data in batches.
This does not work when fetching the data for the customer_wishlist entity. All existing records are returned, and the request is repeated X times based on previous calculations.
+Example SWAG-284484:+
Wishlist (SW5: s_order_notes) with 14.425 records.
The API will be called 14.425 / 100 = 145 times and always returns all data records, resulting in 209.1625 records in the swag_migration_data table.
It should be reproducible by creating a Minimum of 101 records in the s_order_notes table.

[public] Shopware automated response: This issue is linked to the internal issue: MIG-1078
[created from MIG-1078, comment 507574]