Fixed logout button in mobile resolution.

Issue that this pull request solves
--> The logout button is not responsive in mobile resolution.
Closes: #220
Proposed changes
--> The logout button when in mobile resolution should be inside the navigation button.
Brief description of what is fixed or changed
--> The logout button now moves inside the toggle button when in mobile resolution and when the toggle button is clicked,
the logout button appears again.
Types of changes - bug fixes
Put an x in the boxes that apply

[ x ] Bugfix (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 expected)
[ ] Documentation update (Documentation content changed)
[ ] Other (please describe):

Checklist
Put an x in the boxes that apply

[ x ] My code follows the style guidelines of this project
[ x ] I have performed a self-review of my own code
[ x ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ x ] My changes generate no new warnings
[ x ] My changes does not break the current system and it passes all the current test cases.

Screenshots

Other information
--> Please mention if any other changes are needed in the Pull Request.

Thank you for merging my Pull Request.


Don't work with require

Can'r import this package with require.  Everything ok with modern import.
/home/nike/Desktop/anime-advisor/node_modules/@chez14/mal-api-lite/build/index.cjs:4
var got = require('got');
          ^

Error [ERR_REQUIRE_ESM]: require() of ES Module /home/nike/Desktop/anime-advisor/node_modules/got/dist/source/index.js from<EMAIL_ADDRESS>not supported.
Instead change the require of index.js in<EMAIL_ADDRESS>to a dynamic import() which is available in all CommonJS modules.
    at Object.<anonymous> (/home/nike/Desktop/anime-advisor/node_modules/@chez14/mal-api-lite/build/index.cjs:4:11)
    at Object.<anonymous> (/home/nike/Desktop/anime-advisor/app.js:79:23) {
  code: 'ERR_REQUIRE_ESM'
}

Hi @modox94,
Can you please tell me your dev environment? Node version, are you using ESM, and MAL Api SDK version?
Thank you!

Hi. I attached package files to message. I use CJM at this repo. I tried to use your package with ESM and it works fine, but I need CJM support.
node v16.20.0
npm v9.7.2
package.json.txt
package-lock.json.txt

Noted, I'll try to find a way on how to make this work with CJS. Thank you for reporting!

Hi @modox94,
Thank you for waiting, I have consulted with some of my friends that have better understanding with ESM and I have read some blogs about it too. Apparently it's not possible to use newer Got with CJS.
This project uses newer Got, so I need to update it to ESM too. You can actually use dynamic import to replace the require, but apparently i will need top-level await as well. Unfortunately to use top-level await, your package must be converted to ESM ("type": "module" in package.json) as well.

That being said, since I do not use their deeper APIs, I kind of want to try to support older Got version (v11) that still support CJS as well. Hopefully it can still work with this library.
But In the future, I'll drop support for CJS because older got is no longer actively supported. I made mistake when bumping up the major version by not removing the CJS build i copied from my older library project. I'm sorry :(.
I'll update you with my findings. Thank you!

Hi @modox94,
I've published new version so that you can use got with older version. The tests seems okay, but I have not tested it much further.
To install this new version with older version of got, you can run following commands:
yarn add<EMAIL_ADDRESS><EMAIL_ADDRESS>
## or NPM
npm i -s<EMAIL_ADDRESS><EMAIL_ADDRESS>&& npm dedupe

Thank you!


[release/v1.54] Anexia Provider: configure rpc-statd service as kubelet dependency

What this PR does / why we need it:
This is a manual cherry-pick of https://github.com/kubermatic/machine-controller/pull/1553
Does this PR introduce a user-facing change? Then add your Release Note here:

Enables "rpc-statd" service on new Anexia Machines using Flatcar with cloud-init to enable NFS functionality required by Anexia CSI driver.

Please adjust the release branch, these are not flakes.
/override pull-machine-controller-e2e-kubevirt
/override pull-machine-controller-e2e-vmware-cloud-director
/override pull-machine-controller-e2e-vsphere

Please adjust the release branch, these are not flakes.

@xrstf I assume those errors are unrelated to this PR and this message wasn't directed to me?

Please adjust the release branch, these are not flakes.

@xrstf I assume those errors are unrelated to this PR and this message wasn't directed to me?

This message was for me and our dev team :D Not directed to you folks.


Error recording page view: key not found: "request_hash"

This gem is working beautifully in my development (SQLite3) environment. However, I just pushed it to my production (Postgresql) environment and it's no longer recording any information to the database, instead erroring out with:

key not found: "request_hash"

I don't have any sort of complex configuration of the gem. My controller action is just the following:
    def record_page_view
      return if !request.format.html? && !request.format.json?

      RailsLocalAnalytics.record_request(request: request)
    rescue => e # Add error handling
      # Log the error or handle it gracefully
      puts "Error recording page view: #{e.message}"
    end

The tables do exist:
index_db=# SELECT * FROM tracked_requests_by_day_page;
 id | day | total | url_hostname | url_path | referrer_hostname | referrer_path
----+-----+-------+--------------+----------+-------------------+---------------
(0 rows)

index_db=# SELECT * FROM tracked_requests_by_day_site;
 id | day | total | url_hostname | platform | browser_engine
----+-----+-------+--------------+----------+----------------
(0 rows)

The views all exist at /admin/analytics (just without any data obviously).
I'm trying to think of any additional details I can provide. I've fiddled with some settings:
RailsLocalAnalytics.config.background_jobs = false
and
RailsLocalAnalytics.config.background_jobs = true
I've tried with and without the following in my application.rb:
config.active_job.queue_adapter = :async
Have you encountered this problem before or do you have any advice? I can provide any additional requested information as well. Thank you.

Confirm you are still seeing this error key not found: "request_hash" on async adapter? or are you just getting no data?
Confirm you are still seeing this error key not found: "request_hash" on background_jobs = false
What queue adapter do you use in Production other than async?

Apologies, I think I was a little tired when I wrote my initial issue.

Including config.active_job.queue_adapter = :async doesn't seem to make any difference in the application behaviour (is it already the default?).

With background_jobs = false, I get the following in logs repeatedly:

[5a5109e4-cdfe-4840-b32c-35dcf7723c67] Completed 500 Internal Server Error in 625ms (Views: 251.9ms | ActiveRecord: 357.7ms (5 queries, 0 cached) | GC: 42.5ms)
[5a5109e4-cdfe-4840-b32c-35dcf7723c67]
[5a5109e4-cdfe-4840-b32c-35dcf7723c67] KeyError (key not found: "request_hash"):

With background_jobs = true, I receive a lot of the follow:
[4a418fc7-ad85-4176-825c-81d9c77f0c01] [ActiveJob] Enqueued RailsLocalAnalytics::RecordRequestJob (Job ID: 42491e19-f52b-4c0d-b4d0-65444d84a632) to SolidQueue(default) with arguments: "{\"day\":\"2024-12-20\",\"request_hash\":{\"referrer\":\"https://www.website.com/\",\"host\":\"www.website.com\",\"path\":\"/sweepstakes/weekly\",\"user_agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36\",\"http_accept_language\":\"en-US,en;q=0.9\"},\"custom_attributes\":null}"
[4a418fc7-ad85-4176-825c-81d9c77f0c01] Completed 200 OK in 853ms (Views: 152.2ms | ActiveRecord: 568.7ms (7 queries, 0 cached) | GC: 57.1ms)
[92ec6869-9f6f-4841-b23e-5c6216534394] [ActiveJob] Enqueued RailsLocalAnalytics::RecordRequestJob (Job ID: 1e8331a0-72d3-4c5c-8476-52631192e40e) to SolidQueue(default) with arguments: "{\"day\":\"2024-12-20\",\"request_hash\":{\"referrer\":\"https://www.website.com/\",\"host\":\"www.website.com\",\"path\":\"/sweepstakes/daily\",\"user_agent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36\",\"http_accept_language\":\"en-US,en;q=0.9\"},\"custom_attributes\":null}"
[92ec6869-9f6f-4841-b23e-5c6216534394] Completed 200 OK in 852ms (Views: 333.3ms | ActiveRecord: 362.8ms (8 queries, 0 cached) | GC: 61.1ms)

Yet nothing is getting added to the database.

My web application is very small, I do not have any other jobs running and am not using any other queue adapter. The only real functional difference between my development environment and the production environment is that I use postgres in production and sqlite in development.

Do not use the async adapter. I have noticed that it doesnt always work in general (not just for this gem). Switch to solid_queue
2.config.background_jobs = false I have created a PR to fix this, https://github.com/westonganger/rails_local_analytics/pull/19
This issue has nothing to do with using any different database such as SQLite or Postgres. Lets get that off the table.

v0.2.4 has now been released which contains the fix for config.background_jobs = false

Based on your response, I dug around a bit more. By default, my production environment is trying to use solid_queue whereas my development environment does not. This is likely where my issue is coming from. solid_queue doesn't seem to be configured properly as I am missing the solid_queue_processes table (and probably some other "stuff").
We can probably close this issue? I'll have to work out my solid_queue issues. As a side note, are you aware of any good setup guides for it?

The solid queue readme should provide all the information you need. If that does not contain everything you need then you should create an issue or PR to get that fixed up over there.

 Maybe someone will find it useful.
All I had to do was run: bin/jobs


840 tiling cli with DataStore v2

fix for finding the default datastore configuration
update to DataStore v2, sans neo4j
With this change, instead of storing the slide path, we create a symlink to the svs file.
The next improvement could be to simply filter the WSI, Regional Annotation tables with slide_id, and save outputs in the "datastore" location.

This PR covers load_slide and generate_tile_labels. More refactoring to do as we make progress down the tiling workflow..

Codecov Report

Merging #206 (3ee93db) into master (d48e281) will decrease coverage by 0.11%.
The diff coverage is 87.50%.

@@            Coverage Diff             @@
##           master     #206      +/-   ##
==========================================
- Coverage   49.90%   49.79%   -0.12%
==========================================
  Files          60       60
  Lines        5719     5728       +9
==========================================
- Hits         2854     2852       -2
- Misses       2865     2876      +11

Impacted Files
Coverage Δ

data_processing/common/DataStore.py
45.03% <80.00%> (-1.55%)
:arrow_down:

...a_processing/pathology/cli/collect_tile_segment.py
83.05% <82.14%> (+0.59%)
:arrow_up:

...a_processing/pathology/cli/generate_tile_labels.py
86.11% <100.00%> (-0.38%)
:arrow_down:

data_processing/pathology/cli/load_slide.py
73.07% <100.00%> (+8.16%)
:arrow_up:

data_processing/common/Node.py
86.81% <0.00%> (-6.60%)
:arrow_down:

Continue to review full report at Codecov.

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


[CI]: Enhance basic integration tests

Work item https://github.com/intel/intel-xpu-backend-for-triton/issues/144 establishes the base integration tests (CI) for the Triton compiler generating LLVM IR. This work item has the goal to enhance CI to make it closer to the CI system utilized upstream.
As inspiration for this work item we should analyze the following workloads and determine whether we want to adopt them as part of CI:

https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/7179062821/job/19582991867?pr=137
https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/7179062815/job/19550417230?pr=137

Blocked by #139

This ticket consists of two parts, which are currently tracked separately. Closing as a duplicate.
The UT part of this ticket is tracked here:

#471

The E2E UT part of this ticket is tracked here:

#419


Request: Change of translation concept

Hi,
I have used this CMS now in every detail for a multi language page and the translatable function including all the if/else in the view is not very good. This includes also the possibility to search across pages and blog entries. The database selection is not very efficient.
What do you think about to extend the config file by the to allowed languages and take this as an additional key in all tables. So we do not need an own translatable function and table anymore. Of course the repositories need to be extended and the where condition need to be adjusted, but if you like I can do so.
ID LID Language Values...
1  1  EN  My Text
2  1  DE  Mein Text
3  1  FR  ...
4  4  EN Another example
5  4  DE Ein weiteres Beispiel
What do you think about that?
The only issue will be, that in case of an update the already existing translations have to be migrated somehow.

Yes, I'm with you.
The only difference for me is $item->title should always give the translation directly in user language (if given otherwise fallback). I don't like to see in the view always this if/else.

Translations are my next thing to refactor for improvements - I appreciate all the suggestions :)

Any updates on that? Do you need help?

Hi, I trust you are doing fine. Do you have already a rough timeline in your head?

In the latest release menu links are now translatable

This is fine thank you for that. I think that was not the only questions. Do you have thought about the total redesign of the translation?

I found a bug in the menu due to translations which will have a fix coming soon.
@Nowi5 and @kirapwn I've removed the LIKE query (I agree that was a poor choice). I can set up a relational aspect to the pages, so you can easily get links to other languages of the same entity.
Total redesign's are big requests and I'm not a fan of having each module's table needing adjustments to handle the suggestion above, the repositories are in place in order to set the language on the request so that the page you get is the translated one.
@Nowi5 you mention the if/else I just encountered this, and have adjusted the translation method to fall back to the default Model if it cannot find a translation.


clock.setOptions({clockFace: 'HourlyCounter'})  not working?

i want set options after new FlipClock($(el)), but it not working....

Closing this old issue. In the new v1 draft release, this has been addressed. const clock = new FlipClock(el, 1); clock.face = 'HourCounter'; should re-render the clock.


Reduce logging about no idle peers

What was wrong?
Fixes #1133
How was it fixed?
Reduced the logging level to TRACE.  After running stat sync continuously for days now, these messages provide no useful information in the debug logs and merely serve as noise.
Cute Animal Picture

@gsalgado given the simplicity of this, I'm merging as-is and will address any feedback you have post-merge.


SubNav v2

Summary
Part of https://github.com/github/primer/issues/3312
Updates SubNav component to support anchor-based navigation similar to AnchorNav.
⚠ Despite being internally referred to as SubNav v2 there are no breaking changes to the API as part of this update. A full visual refresh however, has been implemented per latest Site guidance.
🔗  Documentation
🔗  Storybook examples

List of notable changes:

updated SubNav.Submenu to support variant="anchor"
updated Storybook examples to respect color modes and differentiate between dropdown and anchor submenu types
fixed various bugs in existing subnav like not closing mobile overlays when clicking outside it

What should reviewers focus on?

Manually review each of the Storybook examples for design accuracy
Read through the docs and verify new features are accurately captured

Steps to test:

Use these Storybook examples
Use this docs link
Use the visual diffs to see before and afters

Supporting resources (related issues, external links, etc):

Tracking issue

Contributor checklist:

[x] All new and existing CI checks pass
[x] Tests prove that the feature works and covers both happy and unhappy paths
[x] Any drop in coverage, breaking changes or regressions have been documented above
[x] UI Changes contain new visual snapshots (generated by adding update snapshots label to the PR)
[x] All developer debugging and non-functional logging has been removed
[x] Related issues have been referenced in the PR description

Reviewer checklist:

[ ] Check that pull request and proposed changes adhere to our contribution guidelines and code of conduct
[ ] Check that tests prove the feature works and covers both happy and unhappy paths
[ ] Check that there aren't other open Pull Requests for the same update/change

Screenshots:

Please try to provide before and after screenshots or videos

 Before  After

New anchor navigation

 Light  Dark

This looks really great!
Just a few minor visual adjustments needed:

Heading font size:

small: 20px → 16px
large: 20px → 18px

SubNav Links font size:

large: 16px → 14px

Gap between links:

large: 24px → 20px

Separator (/) color:

light mode: gray-4
dark mode: gray-5

AnchorNav top and bottom paddings should be set to 12 and 20 respectively. We might need to adjust the link line-height and/or paddings accordingly to compensate the overall height.

Dropdown items should align with the parent link above.

Link to the Figma implementation for reference.
I'll preemptively approve so you can merge when these tweaks are ready.


DA1469x SPI driver

This adds the SPI driver for the Renesas SmartBond(tm) DA1469x MCU family. The driver only supports controller mode. All four SPI modes are supported. Note that the lowest supported speed is 2285714Hz. Requesting speeds higher than 16MHz, will result in a 16MHz SCLK.
The driver was tested on board with MCP4921 DAC and ADXL362 accelerometer
Signed-off-by: Ben Lauret<EMAIL_ADDRESS>

@tbursztyka could you please review?

@tbursztyka, @carlescufi,
Is there anything else needed to move forward?

SPI code looks good, but there are also changes to pinctrl driver so better split this into separate commits. Also there's some change in dac bindings which should be removed.

@blauret please rebase


iOS build fails because of duplicated symbols for architecture arm64

Your Environment
I am using a cloud based service to build my iOS cordova apps. The build process fails during the installation of this plugin.

Plugin version<EMAIL_ADDRESS>Platform: iOS
OS version:
Device manufacturer and model:
Running in Simulator:
Cordova version (cordova -v): 7.1.0
Cordova platform version (cordova platform ls):
Plugin configuration options:
Link to your project:

Context
The installation of the plugin fails because of duplicated symbols for the architecture arm64. Does anyone has an idea where i can search for this symbols in the plugin src?
Here is the build log:
duplicate symbol _OBJC_CLASS_$_Reachability in:
/Users/builder/Library/Developer/Xcode/DerivedData/Mönchsweg-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-2D43DF7E88B71B8F.o
/Users/builder/Library/Developer/Xcode/DerivedData/myApp-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-79D9E963C14A974B.o
duplicate symbol _OBJC_METACLASS_$_Reachability in:
/Users/builder/Library/Developer/Xcode/DerivedData/myApp-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-2D43DF7E88B71B8F.o
/Users/builder/Library/Developer/Xcode/DerivedData/myApp-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-79D9E963C14A974B.o
duplicate symbol _kReachabilityChangedNotification in:
/Users/builder/Library/Developer/Xcode/DerivedData/myApp-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-2D43DF7E88B71B8F.o
/Users/builder/Library/Developer/Xcode/DerivedData/myApp-afntphbrfwablzcqejcrpugodsax/Build/Intermediates.noindex/ArchiveIntermediates/myApp/IntermediateBuildFilesPath/myApp.build/Debug-iphoneos/myApp.build/Objects-normal/arm64/Reachability-79D9E963C14A974B.o
ld: 3 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Expected Behavior

Actual Behavior

Possible Fix

Steps to Reproduce

Context

Debug logs

When I had this issue it was a matter of having two background geolocation plugins in my plugin list. Removing the one that was not being called with that particular build cleared it up right away.


Konflux update test-component-pac-gnkdjb

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI/test-component-pac-gnkdjb-on-pull-request has successfully validated your commit.


fix: updates for get_statevector

as of qiskit .34 get_statevector now returns a StateVector object. We were dealing with the np.array data so we simply extract the data from the StateVector object.

I looked a bit into why the two tests marked xfail fail with qiskit 0.34.1. It looked like there were two problems:

The np.asarray calls in utils_test.py were missing square brackets (easy fix).
Qiskit Aer is transforming complex numbers into length two arrays when serializing them, but failing to convert each length two array back into a single complex number when deserializing. Seems like this maybe is a bug in Aer?
Is this consistent with your understanding?

Ad 1. Good point, fixed in https://github.com/zapatacomputing/qe-qiskit/pull/81/commits/801ff5aa38aa8357dcacf9212fbb5c1dac369044 . Messed it up when copying code that I had on other branch.
Ad 2. Not sure if the "complex number transformations" that you describe are actually causing the issue or is it actually some other part of this pipeline. I think this is some kind of bug in Aer – might be "bug bug", might be some other subtlety in the data structure, etc.
I think I'm able to write a minimum viable example and submit a bug report to qiskit now, but I think it's separate from what we want to do with this PR.


Update request retry logging and add a logging section to the Readme

Hi! First, thank you to everyone that spends time maintaining this library. We use it internally at Timber and would love to support this project in any way we can.
That said, we came across an issue where we needed to debug our interaction with the AWS API. It wasn't immediately clear that the :debug_requests option was available, or logging in general. This PR does a few things:

Adds a logging statement in the Request module to log when a bad response is encountered.
Moves the final/failed logging statement to error since that is a more appropriate level and helps with searching / alerting. We're a logging company :)
Adds a message in the logging statement to denote if the request is being retried or failing.
Adds a logging section in the readme to help save time for other users of this library. I also added a link to our custom HTTP client demonstrating how to extend ExAws to implement custom logging, and hopefully improve their experience with this library.

Actually, after talking with a few other engineers here, I'm going to close this and submit a PR for a simple logging integration. Similar to what Ecto does


[WIP] Use wildcards in blob names.

We can update the blobs while we're at it.

Updated to clamav-0.99.4
Validated in development; should be good to merge


Two possible bugfixes in bb2diaspora.php.

From @dawnbreak on March 22, 2015 13:23
I have found two suspicious parts and tried to correct them. I have no diaspora enabled hubs and I am also not sure what influence these two changes will have:
$unset($item['author']) ==> unset($item['author']);
if(cnt) ==> if($cnt)
Before merging can someone with diaspora contacts test this.
Copied from original issue: friendica/red/pull/935

From @friendica on March 22, 2015 18:35
Just plain bugs. Thanks.


Make possible to decide if a signal method should be created if missing

I'm not sure about this, wasn't the point of the refactor specifically to remove such options which are confusing to the user, and not particularly useful?
In my experience, if the method exists, you want to reuse it, if it doesn't exist, you want to create it. So there's no checkbox needed, it should be automatic.

@akien One of the occasions that you don't want to create it was the cause of another PR of mine: #29703
If you want, I can put it in the "Advanced" section.

I kind of agree with Akien. I don't see the point in adding an option for that.
Regarding the inheritance problem, the parent script should be checked too, so that calling an existing function in the parent script would not cause the creation of a new function. And I don't think it's really necessary to let the user create an overriding function here, that's kind of a rare use case that simply needs a copy-paste.


Tracking issue for Client Metrics

My plan was to use VictoriaMetrics because of the ease of use of vmranges that directly replace buckets of traditional prometheus metrics, however there is no VictoriaMetrics implementation in Rust unfortunately. In the future, a modified library might be used as a Victoria Metrics library but my plan right now is to use the rust Prometheus impl.
Generic Layout

A new metrics structure will be created in a separate file that will contain all metrics and the registry.
This metrics structure will be added to the Global State.
All parts of the program that have access to the Global State will directly update the metrics that they need to.

Additional idea:
Buckets should be configurable by the end user using the configuration file, however a default setting should be available if they don't want to configure it themselves.

Definite Application metrics to track:

[ ] Request Process Durations (label HIT/MISS)
[ ] Total Client Requests (label HIT/MISS)
[ ] Total Bytes Served
[ ] Total Bytes Downloaded from Upstream
[ ] Cache Load Durations
[ ] Cache Save Durations
[ ] Total Cache Size

Maybe Application metrics to track:

[ ] Dropped Requests (Invalid Token, Invalid Parameters, etc.)
[ ] Upstream Download Durations
[ ] Total Browser Already Cached


Adding link to Connector extension on Open VSX

What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind api-change
/kind bug
/kind cleanup
/kind deprecation
/kind design
/kind failing-test
/kind feature
/kind flake
/kind code-refactoring
Documentation changes: Please include [skip ci] in your commit message as well

/kind documentation
[skip ci]
What does does this PR do / why we need it:
Open VSX is an open registry for VS Code extensions. OpenShift Connector is listed there as well.
Which issue(s) this PR fixes:
Fixes #?
PR acceptance criteria:

[ ] Unit test

[ ] Integration test

[ ] Documentation

[ ] I have read the test guidelines

How to test changes / Special notes to the reviewer:

/assign @dharmit

@brianking thanks for your contirbution!
/ok-to-test
/approve
/lgtm

/retest

Hey Brian, this PR's merged. A retest isn't going to do test anything. Is there something specific you're looking for?

@dharmit Noted. I was just blindly following instructions from the comment above. Apologies, I'm not familiar with the project's build/merge system.


Simple key mapping doesn't work

I am trying to do a very simple key remapping, basically remap § to ` (tick) and get the buttons inverted.
I tried the below configs:
0x0A : 0x32

0x0A = 0x32

0x0A -> 0x32

Nothing works so I'm opening an issue here to ask if this is even possible and if so, please provide examples as the current documentation is very ambiguous and completely lacks examples.
Permissions have been given and I've restarted the service for each change to make sure it's loaded.

I think you may need to be looking at skhd -k, to simulate a keypress of another key, when pressing a certain key:
a : skhd -k "f"
f <- I typed this by pressing 'a'

I try to setup all my keyboard related config only using skhd, but when I try to swap two keys (lets say "a" and "b" for example) by doing :
a : skhd -k "b"; b : skhd -k "a"
It doesn't work, it seems like it producing a endless loop or something like when I press "a" it sends "b" but then "b" is interpreted as an actual key pressing (which I know is the normal behaviour according to the help) but then the mapping "b -> a" triggers and the loop is back to the initial state, so nothing append when I press any of these two keys.
Does somebody knows how to bypass this please ?
Thanks a lot !

but... it's impossible for this to be any other way or? If a = b and b = a, then ... pressing a will execute b, which will execute a, which will execute b. This is a loop by nature. Or am I missing something?

Yes but I mean I am looking for an alternative to produce the swapping keys but in a non-recursive way (the output of one key press is not considered by the input or the other one).
In many apps when it comed to key mapping you have the choice to specify wich behavior you chose between recursive and non recursive.
Probably there is a trucky way to do this with skhd but I just didn't find it so I wanted to know if somebody did it in the past.


[SPARK-42500][SQL] ConstantPropagation supports more cases

What changes were proposed in this pull request?
This PR enhances ConstantPropagation to support more cases.

Propagated through other binary comparisons.
Propagated across equality comparisons. This can be further optimized to false.

For example:
a = 1 and b > a + 2 ==> a = 1 && b > 3
a = 1 and a = 2 ==> 2 = 1 and 1 = 2 ==> false

Why are the changes needed?
Improve query performance. For example:
CREATE TABLE t1(a int, b int) using parquet;
CREATE TABLE t2(x int, y int) using parquet;

CREATE TEMP VIEW v1 AS
SELECT * FROM t1 JOIN t2 WHERE a = x AND a = 0
UNION ALL
SELECT * FROM t1 JOIN t2 WHERE a = x AND (a IS NULL OR a <> 0);

SELECT * FROM v1 WHERE x > 1;

Before this PR:
== Optimized Logical Plan ==
Union false, false
:- Project [a#0 AS a#12, b#1 AS b#13, x#2 AS x#14, y#3 AS y#15]
:  +- Join Inner
:     :- Filter (isnotnull(a#0) AND (a#0 = 0))
:     :  +- Relation spark_catalog.default.t1[a#0,b#1] parquet
:     +- Filter (isnotnull(x#2) AND ((0 = x#2) AND (x#2 > 1)))
:        +- Relation spark_catalog.default.t2[x#2,y#3] parquet
+- Join Inner, (a#16 = x#18)
   :- Filter ((isnull(a#16) OR NOT (a#16 = 0)) AND ((a#16 > 1) AND isnotnull(a#16)))
   :  +- Relation spark_catalog.default.t1[a#16,b#17] parquet
   +- Filter ((isnotnull(x#18) AND (x#18 > 1)) AND (isnull(x#18) OR NOT (x#18 = 0)))
      +- Relation spark_catalog.default.t2[x#18,y#19] parquet

After this PR:
== Optimized Logical Plan ==
Join Inner, (a#16 = x#18)
:- Filter ((isnull(a#16) OR NOT (a#16 = 0)) AND ((a#16 > 1) AND isnotnull(a#16)))
:  +- Relation spark_catalog.default.t1[a#16,b#17] parquet
+- Filter ((isnotnull(x#18) AND (x#18 > 1)) AND (isnull(x#18) OR NOT (x#18 = 0)))
   +- Relation spark_catalog.default.t2[x#18,y#19] parquet

Does this PR introduce any user-facing change?
No.
How was this patch tested?
Unit test.

cc @cloud-fan

TiDB also supports these optimizations:


Use zarr.array rather than zarr.create

[x] Closes #5942
[ ] Tests added / passed
[x] Passes black dask / flake8 dask

If this seems like a sane change, I'll add some tests.

Not sure if there are implications for https://github.com/dask/dask/issues/5943 as well.

Although we don't understand exactly what's happening, if the original issue in  #5942 becomes a test, and we can show an improvement in memory use before/after (dashboard view of the local cluster?), then this should go in.


http4s upgrade to 0.22.15

Upgrade http4s version
Fix breaking changes caused by the new version

Codecov Report

Merging #232 (61c1296) into master (06ca5fa) will decrease coverage by 1.67%.
The diff coverage is 90.00%.

:exclamation: Current head 61c1296 differs from pull request most recent head a623559. Consider uploading reports for the commit a623559 to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##           master     #232      +/-   ##
==========================================
- Coverage   98.27%   96.61%   -1.67%
==========================================
  Files           1        1
  Lines          58       59       +1
  Branches        2        2
==========================================
  Hits           57       57
- Misses          1        2       +1

Impacted Files
Coverage Δ

src/main/scala/org/http4s/finagle/Finagle.scala
96.61% <90.00%> (-1.67%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Named flashcard collections

Added the overall 'structure' for users to be able to create and view sets/collections of flashcards. However, we were not able to get everything functioning correctly. Known issues include isPublic boolean being defaulted to false regardless of user selection - which is why the 'Latest Sets' on the 'Latest' page does not display any sets despite all being public. Also, only the first card created in the form page is saved to the set database. Everything seems to be working correctly otherwise.

All of the code looks good based on a quick read through. When I attempt to run the code I get an exception:
An unhandled exception occured while processing the request.
ArgumentNullException: Value cannot be null. (Parameter 'connectionString')
MongoDB.Driver.Core.Misc.Ensure.IsNotNull(T value, string paramName)
It looks like the error comes from the call on line 48 with SetDatabaseOptions:ConnectionString
Edit: After looking through the code a tiny bit more, I think that has to do with a missing value in my appsecrets.json. Was the appsecrets.json updated?

It appears so. We're missing parameters the for SetDatabaseOptions. Hopefully someone can distribute a working copy for us!

@youngcornelius If your team has made changes to the app secrets file you will have to distribute those changes to the team (and most especially to me) or else this PR cannot be reviewed or approved.


reallocate from sick

Not sure this is still needed. (close this if not)
Moved from
https://github.com/SpiNNakerManchester/sPyNNaker8/pull/458
Depends  on (Which may still be a good idea)
https://github.com/SpiNNakerManchester/SpiNNFrontEndCommon/pull/662
https://github.com/SpiNNakerManchester/SpiNNMachine/pull/139

old will redo if needed.


Rework includes and third party

I've removed the 3p libraries from being embedded, they now download from github instead.
I've also added explicit license files for them.
I've also cleaned up the include chain and forward declared stuff to try to avoid miniaudio and vorbis being included into every compilation unit, in fact, it is no longer required to be a header path in either of the dlls, only the private objects now.

I actually tested this on linux, since I switched to linux for primary dev.  It works fine.  I can even get it to play an example wav and ogg in the editor/game.

I actually tested this on linux, since I switched to linux for primary dev. It works fine. I can even get it to play an example wav and ogg in the editor/game.

Awesome! Am I good to merge this now?

Alright, I'm merging this one to development branch. Thanks a lot!


docs: Fixed gitter chat URL to point to chaijs-channel

The gitter link pointed to a non existing channel type-detect. I pointed it to the chai-js channel.

Coverage remained the same at 100.0% when pulling c24a0c2108989317c989dcf950affe839b95dd16 on Fix_Gitter_Chat_Link into f664e47a64c11277b4fbf7ac00c8dd7af0a8f7a1 on master.

Coverage remained the same at 100.0% when pulling c24a0c2108989317c989dcf950affe839b95dd16 on Fix_Gitter_Chat_Link into f664e47a64c11277b4fbf7ac00c8dd7af0a8f7a1 on master.

LGTM. @lucasfcosta?

Actually I'll just merge this, it's trivial enough :smile:

Sorry, I didn't see it fast enough :sweat:


[BUG] Get different image value each feed

System information

OS: Centos 7
TensorFlow installed from source
Tensorflow version: both 1.1.0rc1 and 1.2.0rc1
Bazel version: 0.4.5-jdk7
CUDA 8.0/ cuDNN 5.1
GeForce GTX 1080 / 8G

Describe the problem
Get different values of the same feeded image.
Source code
Below is a minimal script that reproduce the problem:
import tensorflow as tf
import numpy as np
from scipy.misc import imread

test_im = some-test-img-path
im = imread(test_im)
im_batch = np.stack([im])

img_feed = tf.placeholder(tf.uint8, (None, None, None, 3))
img_mean = tf.reduce_mean(tf.to_float(img_feed))

with tf.Session() as sess:
  for i in range(10):
    img_mean_tf = sess.run(img_mean, feed_dict={img_feed: im_batch})
    img_mean_np = np.mean(im_batch)
    print('tf img mean: {}, np img mean: {}'.format(img_mean_tf, img_mean_np))

It works as expected in CPU though. Looks like it is related to GPU computation.

If the difference is not large this is not a bug. Reduction operations on GPU are non-deterministic.

@gongbudaizhe, @ppwwyyxx is correct about reproducibility. Please guantify the difference.

Ok, so this means GPU is inherently non-deterministic... that explains a lot of things...
In terms of reproducibility, for me, the effect turns out to be minimal. Thanks guys.


docstring inconsistent of several functions in datetime_parse.py

Hello!
I'm doing some research about document inconsistence.
I run  monkeytype run `which pytest` to get the runtime type of functions/methods in test cases and find that parse_date in datetime_parse.py receives parameters of date, int, float and str type in given test cases, which is inconsistent with its docstring "Parse a string and return a datetime.date". The same as functions parse_time, parse_datetime and parse_duration.
I'm uncertain weather these should be regard as an document inconsistence ? And it would be fine if you can modify inconsistent docstring :)

The tests are right and the docstring is wrong, parse_time, parse_datetime and parse_duration should be able to take string, int, float, datetime's etc.
PR welcome to update the docs and type annotations.

PR has update in #173 .


Add Guide for Development Setup

Background
If we look at the current documentation, like README.md (latest commit here) or the blog documentation, there is no guide being provided to setup local for development. A little example, what needs to be prepared in the local environment to do test (unit test and integration test)? Another, what database and which version should we prepare? If no guide or the guide is not clear to set up for local testing, then little chance any developers will use it to test locally. And this could hinder adoption.
Proposal
We need to have a comprehensive guide and documentation for both developer and the general user. The guide and documentation should include as many details as possible, no matter how small they are. Be it the database and its version, or the scheduler like Airflow, or even what environment variable is needed, how to deploy, how to set up the job, what to prepare for resources, how to monitor the whole system, and more. Everything should be included.

Additional considerations that need to be included. We also need to put a glossary for every keyword we use. Another thing to add is a step-by-step guide for each possible activity. For example, in order to deploy job, what to prepare and what to do, and with recommendation and exception would be great, such as how to write project configuration for the deployment.

Should be handled as part of #168


typo:totol->total

Codecov Report

Merging #134 (94ba720) into main (0ea5204) will decrease coverage by 0.06%.
 Consider uploading reports for the commit 82127b1 to get more accurate results

@@            Coverage Diff             @@
##             main     #134      +/-   ##
==========================================
- Coverage   37.68%   37.62%   -0.07%
==========================================
  Files          12       12
  Lines         828      832       +4
==========================================
+ Hits          312      313       +1
- Misses        473      476       +3
  Partials       43       43

Impacted Files
Coverage Δ

client/client.go
0.00% <0.00%> (ø)

client/factory.go
0.00% <0.00%> (ø)

client/node.go
43.13% <ø> (ø)

client/servicewatch.go
3.84% <0.00%> (ø)

config/config.go
5.88% <0.00%> (ø)

cmd/gateway/main.go
10.60% <33.33%> (+1.37%)
:arrow_up:

proxy/proxy.go
51.74% <36.36%> (-1.11%)
:arrow_down:

middleware/tracing/tracing.go
79.10% <100.00%> (ø)

proxy/condition/condition.go
47.05% <100.00%> (ø)

Continue to review full report at Codecov.

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


isLoading is always return true after go other page 2 too fast (before loading in page 1 success)

Describe the bug
I have page 1 /photos and two useQuery function
  const { data: profileDetail } = useQuery({     queryKey: ["userProfile"],     queryFn: () => getProfileDetail(),   });   const { data: listUserToken, isLoading: isLoadingUserToken } = useQuery({     queryKey: ["listUserToken"],     queryFn: async () => {       const result = await getListUserToken();       return result;     },   });
I hard reload this page and don't wait the query is success => and click to push in page 2

 {           router.push("/photos/1");         }}       >         Click {isLoadingUserToken ? "Loading..." : "Done"}

In page 2 i will have some other useQuery function
 const { data: userExp } = useQuery({     queryKey: ["userExp"],     queryFn: () => getUserExp(),   });   const { data: profileDetail } = useQuery({     queryKey: ["userProfile"],     queryFn: () => getProfileDetail(),   });   const { data: userLevel, isLoading: isLoadingUserLevel } = useQuery({     queryKey: ["getUserLevel"],     queryFn: () => getUserLevel(),   });
And then i don't wait the query success, i click to push page into page 1 (/photos)

 {           router.push("/photos");         }}       >         Back
       {isLoadingUserLevel ?
Loading....
 : "Loading done"}
And now, isLoadingUserLevel always return true
Your minimal, reproducible example
https://stackblitz.com/edit/stackblitz-starters-xmhdkt?file=app%2Fpage.tsx
Steps to reproduce
Step 1: Click go to photo Detail
Step 2: Reload page Photo detail and don't wait api loading success
Step 3: Spam click button go to list photo in page PhotoDetail (Dont wait api loading success)
Step 4: When go to List photo, spam again on button go to photo detail
Expected behavior
I expected isLoading work after reload and go to other page fast
How often does this bug happen?
Always when using this step
Screenshots or Videos
https://github.com/user-attachments/assets/33bc371b-052c-4136-af00-5bec36063a03
Platform

OS: MacOS Monterey 12.7.6
Chrome: Version 130.0.6723.117 (Official Build) (x86_64)
NextJs: 14.2.13

Tanstack Query adapter
react-query
TanStack Query version
^4.35.3
TypeScript version
^5
Additional context
No response

Thank you for filing this issue, but we need more information before looking into this.
Specifically, a minimal, standalone, runnable reproduction is needed - preferably with codesandbox or stackblitz.
We'll close this issue for now, but we'll certainly re-open it if there is a proper reproduction.

@TkDodo  thanks for your reply, i will give you a code sanbox soon. And you can see my video for more infor. Thanks

Hi @TkDodo , Sorry for the slowly response, i already update the stackbliz code example and step to have the bug. Here is my stackbliz link
https://stackblitz.com/edit/stackblitz-starters-xmhdkt?file=app%2Fpage.tsx

I happened in the "Link" component of nextjs.
If I moved the page before useQuery was done, the same thing happened to me.
https://stackblitz.com/edit/stackblitz-starters-4tjsxt?file=app%2Fpage.tsx

It didn't happen because the page was reloaded when using the 'a' tag.

@parkinjong so, to be on the same page: the issue doesn’t show up when router.push is used, but it does show up when a next Link is used ?

@TkDodo
When I tested it on stackblitz, router.push and Link look the same

Does anyone have some suggested ideas for this issues?
If the user presses too fast and the error does not load, it will reduce the user experience. And if i prevent user from click any thing after api succeed, it still not good.

facing same issue, dont we have some fix ?

same issue, any fix ??


⚠ ClamAV has degraded performance

In 712e300, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 485 ms

Resolved: ClamAV performance has improved in b4a79a2.


Suppress unused deps

Code looks good to me, I will run the CI tests locally and merge if sucessful.


[Q] signal and quality in dBm

I am trying to save the values that indicate the signal quality in dB to use them for example on a csv file or a chart.
I found the dvb-fe-tool --femon utility, which returns while tsduck is searching the channels, a continuous loop of data but does not report the tuning frequency. Also, the whole thing in this way is very long and complicated. This is the output:
dvb-fe-tool --femon
"Lock   (0x1f) Quality= Good Signal= -63.12dBm C/N= 33.61dB UCB= 0 postBER= 0 preBER= 256x10^-6 PER= 0"
I wanted to know if with tsduck there could be an easier way to know the signal without using percentages?
Thanks
Cristian

dvb-fe-tool is a Linux specific tool. TSDuck tries to be generic and works indifferently on Linux and Windows. Signal strength and other statistics were badly managed on many drivers, Linux and Windows. The semantics of the returned value was unclear. Only recent versions of Linux kernel introduced a new API to report precise values (subject to cooperation from the driver). I will see what I can do.

thanks @lelegard
Obviously I don't expect measurements worthy of professional instruments, but be sure of a signal variation compared to other daily measurements

I did some testing with tsp --verbose
These are values that for my area are reasonable
* Debug: dvb: 6 DTVProperties (statistics result):
* Debug: dvb: [0] cmd = 62 (DTV_STAT_SIGNAL_STRENGTH), count = 1, stat = {scale: 1, value: -64250}
* Debug: dvb: [1] cmd = 63 (DTV_STAT_CNR), count = 1, stat = {scale: 1, value: 31632}
* Debug: dvb: [2] cmd = 66 (DTV_STAT_POST_ERROR_BIT_COUNT), count = 1, stat = {scale: 0, value: 0}
* Debug: dvb: [3] cmd = 67 (DTV_STAT_POST_TOTAL_BIT_COUNT), count = 1, stat = {scale: 0, value: 0}
* Debug: dvb: [4] cmd = 68 (DTV_STAT_ERROR_BLOCK_COUNT), count = 1, stat = {scale: 0, value: 0}
* Debug: dvb: [5] cmd = 69 (DTV_STAT_TOTAL_BLOCK_COUNT), count = 1, stat = {scale: 0, value: 0}

* dvb: locked: yes, strength: -64.25 dB, SNR: 31.632 dB

Hi @lelegard,
Can you insert in the xml file generated by ttscan the value of the signal (strength)?
For example

UHF channel 36 (594 MHz), locked: no, strength: -69.5 dB

and in ttscan when I use the option --save-channel:
...
<dvbt frequency="594,000,000" modulation="64-QAM" HPFEC="3/4" LPFEC="1/2" bandwidth="8,000,000" transmission="8K" guard="1/4" hierarchy="none" inversion="off"/ strength="-69.5dB" >
...
Thanks

HI @cristianpuddu
The channel XML file describes the permanent characteristics of the broadcast in a given area. The content of these files never changes (as long as the channel map is not updated by operators). These files can be freely exchanged by people in the same reception area or published on the net.
The signal strength, on the other hand, cab change all the time. It depends on the weather (especially for satellite reception), the quality of your antenna, downlink cable, tuner, driver, etc.
So, no, the signal strengrh has nothing to do in the channel file, sorry.

I totally understand, your valid observations.
About DVB-T, when I do a scan with tsscan I expect to find local muxes in the results.
But this is not always true.
For example, I scanned some frequency yesterday, and surprisingly I found new muxes.
These signals were much weaker than the others and only receivable for a few hours, because they were due tropospheric propagation phenomena (https://en.wikipedia.org/wiki/Tropospheric_propagation) and they were over 600 km away from my location.
A reference to the signals would have allowed me to know right that they weren't coming from the usual location
where I get all the others.
I'll try to extrapolate the signal from stdout...

Automatically closed after 373 days without update and "close pending" label set.


404 Not Found

http://bibsoup.net/search?q=peres
first record points to a 404:
http://bibsoup.net/pitman/peres_yuval/yfORTKUAAAAJ:IUKN3-7HHlwC
This was displaying a few hours ago, when I submitted previous report about links not displaying.
I could see the links in the record but not in the default display. Something changed since then?

fixed in code, pushing to repo later today.


Too much P3 Training GUI misprints

Issue Description
When attempting to set up training for a Precision Level 3 model, the following terminal output are given which may be confusing to non-EPD developers.
Setting Model to  maskrcnn
[ WARNING ] - Dataset directory not provided. Please choose Dataset.
Set Model to  maskrcnn
[ WARNING ] - Dataset directory not provided. Please choose Dataset.
[ WARNING ] - Dataset not properly restructured.Please restructure Dataset.

This issue will be resolved with https://github.com/ros-industrial/easy_perception_deployment/pull/57 - 0.3.1 - Patch Pull Request.


Fix/multi parameters

Reference Issues/PRs
#32
What does this implement/fix? Explain your changes.
Any other comments?

LGTM Shah @F-Shahali
I tested this with https://test.com/url/url2/url3?param1=value1&param2=value2&param3=value3 and it worked well.


integration: add TestV3WatchMultiple

For https://github.com/coreos/etcd/issues/4216.

@xiang90 Just addressed, except:

let's move the checking into this loop. checking outside the loop makes thing complicated and incompleted.

So I did this:
		if wresp.Created {
			watchIds[wresp.WatchId] = struct{}{}
			continue
		}
		if _, ok := watchIds[wresp.WatchId]; !ok {
			t.Errorf("watchId %d is not created!", wresp.WatchId)
		}

Is that what you meant? This records the watch id when creation and next it checks
if the watch is from the known watcher by its id.
Thanks for feedback!

@gyuho see https://github.com/coreos/etcd/pull/4225/files#r49939791

@xiang90 Just fixed. PTAL. Thanks!

LGT after resolving last few issues mentioned above. Thanks!

Thanks! I will wait for https://github.com/coreos/etcd/pull/4224 to be merged first.

@gyuho That is fine. There should not be a merge conflict (if there is one, it should be an easy fix). Just go and merge this.

Ok will merge after CI passes. Thanks,


Latest jquery

jquery-match-height not working with latest jquery min file ie 3.3.1

Did you find a solution to this?

I have no issue using jquery-match-height with this version
https://code.jquery.com/jquery-3.3.1.min.js

Can you provide more information on what is not working, any console errors and in which browsers?


Hungarian translation

Hungarian translation (based on v0.4)

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


Empty ".extended-webpackrc.js" in "Map page views by region in a custom app"

Tell us what you need
Most (all?) of the .extended-webpackrc.js collapsers in this doc are empty. https://developer.newrelic.com/build-apps/map-pageviews-by-region/ Not sure if these should just be deleted or if there's content that should be added.
Doc information (don't delete this section)

https://developer.newrelic.com/build-apps/map-pageviews-by-region/
OS: Mac OS 10.15.7
Browser: Edge 90.0.818.66
Device: Unknown

I wouldn't consider this a bug, more so a documentation style choice. given we are displaying the 3 files used in this tutorial consistently across each step, I think it's fine to include the tab view of each file, so it's clear that nothing changes in this file in certain steps.  I feel it clearly allows a person to know when something changes  / not changes. but I'll ping @alexronquillo on this for a 2nd opinion here.  😄

@austin-schaefer @jpvajda  tldr; This is intentional, and I recommend leaving it as is.
This guide uses the <Tutorial> component, which provides some nice features like file tabs, auto-highlighting, etc. With it, the author establishes, at the top of the piece, a <Project> that includes all the files that'll be edited throughout the course of the guide. In this case, that's three files including .extended-webpackrc.js.
There are trade-offs to consider for this approach vs the traditional approach of using manual codeblocks and highlighting. So we have to decide what's the best UX.
The options here are:

Leave it as is.
Separate .extended-webpackrc.js from the <Project> and have that be its own separate codeblock that only shows up in that step. The other two files would remain in the <Project> and would have a different UX.

Most of the benefits of <Tutorial> don't apply to .extended-webpackrc.js as it only changes once where it goes from no content to final content. However, as @jpvajda mentioned, there is the benefit of consistently showing the three working files throughout the piece. In particular, for steps after that file has content, readers can tab over and see the current state of every file.
I think that the benefits of consistency and grouping the files together outweigh the weirdness of having that file be empty for most of the piece, especially because it reflects the real file state.
However, I think if you want to create a dev issue that addresses the limitation of showing new files later in a guide, I'd support that. There are many cases where that would be beneficial. This is one. Another case would be if the user needed to create a new file in a project half-way through the guide. There's no way to do that now.

Reading the docs on the  component I can see several improvements we could make to this component to offer more flexibility when build guides with steps and code files. But, it's not really a priority for us at the moment to make improvements how the component works. I'd vote we just close this issue out, leave it the way it is, and measure if we get other reports of confusion or problems from actual users. AFAIK, we haven't had an external reports from users of issues with this approach.


Added docs to explain how to use markdown to display images

Took me a while to work out how to show images with Markdown, especially on a landing page (index.md). Added docs with a sample image I created to demonstrate.

Thank you for your contribution


Idea of an alternative to adding the OCR to a new field

Hi,
I have been thinking about doing an addon like this for a while. Congrats for doing this!
I had another approach though that you might find interesting.
I really didn't like the idea to add OCR fields to all the note types that can contain text so my idea was instead to add the text content as an HTML comment in the field containing the picture. Visually, it does not change a thing to the card and is searchable through the anki browser. I also mean you can restrict search per field, as sometimes my pictures are added in "sources" field or in "More", "Cloze body" etc.
I think this could be a very interesting feature to add. What do you think? It would be worth asking Damien if it is reasonnable to do or if comments are sometimes cleaned up or whatever.
Another possibility was to add the text content in the "alt" argument of the "img" html attribute, like in this example
What do you think?
Either way the content would need to start with some kind of identifier like ___ocrtext_unixtime=23094203984209___ and ___endOCRtext___ to avoid adding text over and over in case someone runs the script regularly or wants to edit tesseract settings. At least that's how I designed it.

I second that notion and i think it would be really cool, i also dont like how it create a new field. for user friendly sake, it would be nice if I can right-click on an image and create an OCR for that image in html with the alt argument. to further this point, may be made it automate if the user selected a specific note type (e.g., image occlusion) in config setting?
using OCR to make image contents search feasible is definitely a neat and useful idea :). kudos

These are great ideas, thanks for the suggestions! I initially had planned to just put the text in the 'Extra' field with small font, but of course not all cards have that field. Doing it the the img alt text is a really good option, I'll do some testing, but that might be the best way forward. Significantly less change of database stuff ups too!

Good to know I was a bit helpful :)
I think it would be good to ask Damien's opinion on the forum, to be sure there are no limits somewhere to the alt field or whatever. Just to make sure there are no surprises you know.

How does this look? Putting in the 'title' attr means it comes up as a tooltip when hovering over the image

Closing this, as of V0.3.0 this is now the default method

klqjsfjqskdjfqsmkldjfqlsmkjfqksmjfqslkmfjqsmlfkqsjdflmkj should pretty much sum up my excitement.
Thanks a lot!


realsense-viewer: error while loading shared libraries: librealsense2-gl.so.2.23 AFTER updating to 2.24

After install 2.24, the realsense-viewer still load librealsense2-gl.so.2.23.
i updated follow https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md.
and i don't know where am i wrong.
realsense-viewer: error while loading shared libraries: librealsense2-gl.so.2.23: cannot open shared object file: No such file or directory

Hello @DCDCDCDCDCDC , are you installing Debians or building from source ?
In the former case this could be related to #4410, which should be resolved via sudo apt update && sudo apt upgrade,
When building from sources make sure to remove the previous version(s) with sudo make uninstall to avoid polluting the disk with multiple so files. In case the manifest files was accidentally removed (required by sudo make uninstall) -  you'll have to navigate to the /usr/local/lib /usr/local/bin directories and remove the leftovers manually.
If you have multiple librealsense versions installed intentionally then check that you invoke the proper realsense-viewer version. (which realsense-viewer) - I suspect that usr/local/bin path has precedence.

@DCDCDCDCDCDC , did you follow the steps?
Please update

@ev-mp, after totally reload the whole pkg, the problem solved. and ur right.

Thanks for the confirmation


Add ParadeDB

Hi everyone,
Thank you for maintaining this Awesome repository. I've added the references for ParadeDB (https://github.com/paradedb/paradedb), which embeds DuckDB in Postgres.
Thank you for adding us to the repository.
Philippe

Thanks for the PR! Very interesting work and articles.

Thank you!


Should ESLint configuration be in package.json file?

In the https://github.com/exercism/ecmascript track, ESLint config is in package.json. It has a reason, becasue that file is copied to all exercises, so it keeps a change that needs to be shared between all exercises in a single palce.
This track is a little bit different. Here, the config is outside package.json. #437 needs to add some ESLint configuration, to ignore some specific files, by adding a .eslintignore file.
Should ESLint configuration (.eslintrc.json and .eslintignore) be part of the package.json file?

Since we don't copy package.json in this track, either way seems fine.
But just for the sake of consistency with the ecmascript track, and for us not to remember two different things, I think it will be better if we put in package.json itself.

It makes sense for me too. Any other thought @exercism/ecmascripts?

I agree with @tejasbubane

The discussion is more or less over, so I created a issue to do the actual work.
I'm going to close this issue. Anyway, if anyone has something to say, we'll be glad to listen.


Exception calling "Save" with "1" argument(s): "Object reference not set to an instance of an object."

Hi,
I'm using vsts xdt transform task, and it's returning the following error:
Exception calling "Save" with "1" argument(s): "Object reference not set to an instance of an object."
Any help?

Thanks

Hi @aminebz949904,
I'll look into this. Could you tell me which version of powershell you have installed on your build server and which version of the .net framework?
Thanks

Hi qetza,
Thank you for your help..
Powershell version on the build server is:
Major  Minor  Build  Revision

5      1      14393  1715
.net version 4.5.2
However, I have tried many xdt transforms, and some of them don't throw the exception, but they don't apply the requested change to the file.
Thank you

Hi,
Actually, I have used
xdt:Transform="SetAttributes(ApplicationTypeName)"
instead of: xdt:Transform="Replace"
And it worked fine.
Thanks you for your help.


HTML escape YAML after parsing to prevent invalidating YAML string

Resolves https://github.com/gollum/gollum/issues/2024
We were previously HTML escaping the entire YAML string before parsing it. This means that some valid YAML was being scrubbed (in the case of the reported bug, the > character, but who knows if there are more?). This new approach first parses the YAML, and then recursively HTML escapes every key and value in the resulting hash.

A (obviously faster) alternative is to not HTML escape/sanitize the frontmatter hash at all, and make the frontend  (mustache) responsible for escaping. @bartkamphorst what makes more sense do you think?

Implementation looks clean. Can we expect a performance hit for recursively sanetizing medium-sized YAML frontmatter?

In theory yes, but in practice probably not? I think it is unlikely that front matter would consist of very deeply nested dicts and arrays. As a design question I'm unsure what the proper place for escaping is though (here or in the frontend). We sanitize most macro and page data in gollum-lib, but that's because in most cases we want to allow certain html tags and disallow others (for which we use loofah). For the front matter, we could (and maybe should?) just escape all html. So we could
a) let this macro return unescaped content and let mustache handle it in the frontend (a break with other macros).
Or
b) handle escaping as in this PR, but instead of using the standard Sanitization class (i.e. loofah), use something presumably faster like CGI.escape_html?

@bartkamphorst just noticed this PR again, it's been a while but do you have any thoughts on the proper way to handle this?


WASM - Multi-Value (2w)

https://github.com/WebAssembly/multi-value

Frontend work completed, still need to do runtime


Subsetting: distribution bar plot extends into infinity and reports nonsensical numbers

for gems1a i first subset on age 0-83, and then clicked on country. i got this:

i am tentatively assigning this low cost, but that is pending full diagnosis

In GEMS1 as well, if you subset on weight (5.24-10.48) then look at rectal prolapse (in the same entity) you see this:

Using that same filter at the repeated measure entity, if I look at categorical variables in the sample entity, the counts and bar charts look ok. If I look at variables in any other entity, the counts look wrong

Not sure if this is related or not, but in India ICEMR Cohort, I made a subset based on height (on repeated measure entity), then in the visualization tab with the histogram tool, if I tried any variable at an entity higher than repeated measure, I got a 500 error. Choosing variables at the repeated measure or sample entity returned a plot

confirmed fix in new data load

It looks good now, closing ticket.
The original issue:

The following issues are also solved.


Fixed error that shows whenever Terminus::launch is run from Windows with spaces in dir path

Closes #544

Closes #562

:+1:


Consider the immix GC

I came across a GC called immix that is very new and wanted to bring it to the attention of the Crystal community. immix was written by contributors of the scala-native project, which aims to compile Scala to native code via llvm as a backend, like Crystal. Also like Crystal, they originally opted to use the boehm GC during their initial implementation, but made plans to explore other options.
Why should the Crystal community pay attention to this GC? Look at these benchmarks.

It appears as though for smallish heap sizes the immix algorithm comes very close to the performance of not having a GC running at all. Which seems amazing to me (although I don't know much about the subject).
The scala-native devs say immix is ahead of the curve performance wise in comparison to the majority of GC's which are based on research from the 90's and early 2000's (immix was 2008).  They still are using boehm by default but plan to switch to immix soon as it gains some maturity.
You can see the source for immix here:
https://github.com/scala-native/scala-native/tree/master/nativelib/src/main/resources/gc/immix
And in these two files you can see that they define an identical interface for both boehm and immix, that is not to far off from the APIs Crystal uses from boehm.
https://github.com/scala-native/scala-native/blob/master/nativelib/src/main/resources/gc/immix/ImmixGC.c
https://github.com/scala-native/scala-native/blob/master/nativelib/src/main/resources/gc/boehm/gc.c
Here's the point in the relevant talk where the scala-native dev talks about immix and discuses some it's performance characteristics.
https://youtu.be/JZCeQi_xLok?t=14m1s

Can it also be used by C/C++ code?  As in, how to integrate it with linked-in libraries?
Does it require full type data?  The talker says it's precise, so I guess yes.

The nice part about Boehm is that it's C/++ native already, in that it is conservative and can be used by wrapper libraries to integrate existing C/++ libraries into "Crystals GC".  This in effect eliminates almost all ownership issues, which is really nice.
Whatever the GC does, it should support something (A special API is fine too) that can do this.

Looks nice, but it's bundled with the scala-native project, and will probably be optimized for the needs of Scala. Do they intend to extract it, and make it a language generic implementation?

@Papierkorb, my knowledge of compiler design and issues of lowish level compilation issues is shallow. But I know a central goal of the scala-native project is to perform very seamless C interop (probably rivaling or superior to Crystal's)
@ysbaddaden, considering they include the source in there root project I'd doubt it. But the scala license is a simple BSD license. And considering the API's are so similar, It would seem foolish not take the few hours it might take to hack Crystal to use it and see if it doesn't work "plug and play". I honestly looked into trying this myself but not only is my C knowledge shallow but Crystal is not building on Ubuntu 17.10. :(
But for anyone who was willing to try this.. I only briefly looked over Crystal's boehm usage and it looks like some parts (setting "bottom stack pointer" i think, letting boehm proxy pthread calls) are just requirements of boehm that the immix doesn't require. Maybe it's possible interfacing with immix is simpler.
My underlying point is that it might be so simple that it could be worth trying before diving into the "is it legal, is it optimized for Crystal like questions"

@Papierkorb, also think I intuition would tell you that if (i assume so) scal-native can seamlessly switch between boehm and immix, Crystal would be able to as well.

@ysbaddaden, another thing to consider, scala-native is also in a "implementing multi-threaded" phase like Crystal. I suggest that Crystal just explores the viability of immex, and then wait's for the scala-native dev's to actually bring it into a production ready state.

Few hours will quickly turn into days and weeks.
For example, we need create a stack for each fiber. How can we declare theses stacks to ImmixGC so it can scan them? If we can't (and I didn't find it with a quick search), then allocating memory in spawn will be thought as inaccessible and freed :boom:

@ysbaddaden, ya I agree that that getting another GC really working could take weeks worth of effort. But you could still try it without green threads. And if you you did, and did confirm that the performance improvements were really what the scala-native bench marks suggests they are, then wouldn't it be worth it to take those weeks worth of effort to get it to work for real?

Wouldn't that time be better spent making a Crystal native GC so we could have less dependencies and also it would fit our needs 100% ?

@bararchy, by native GC do you mean written in Crystal? Crystal uses llvm to compile to actual native code, pure Crystal would be a "pipe dream".

@pnloyd all depends on priorities I suppose , do people want multi-threading / windows support , or a "free" 20% speed increase , and "free" because as @ysbaddaden said, it might take a not so low amount of time to add

by native GC do you mean written in Crystal? Crystal uses llvm to compile to actual native code, pure Crystal would be a "pipe dream".

The opposite is in fact true, you can implement a full GC in pure Crystal just fine.  No problem apart from writing the (complex) code.

Found the mentioned paper: http://www.cs.utexas.edu/users/speedway/DaCapo/papers/immix-pldi-2008.pdf
Don't have time reading it now though..

@Papierkorb, I didn't state you couldn't write a GC in crystal. I was insinuating that having the entire Crystal stack be in purely Crystal is near impossible / impractical. So the fact the immix is written in C shouldn't be of concern, just like the fact the boehm is written in C isn't a concern now.

@bararchy, even if it wouldn't translate over to windows for what ever reason, the API's are so similar you could easily add some kind of switch between them. Giving up up a 50% increase in performance or more on POSIX platforms makes no scene just because you can't have the same on windows.

There's no point talking hypotheticals with no information, I'm sure we could contact some immix devs and see what their opinion is.

Having a fast GC that can't support fibers will only lead use so far. We wouldn't be able to bench HTTP::Server for example, or a real world Kemal app.  Walking a single stack is one thing, walking hundreds makes a huge difference.
Writing a GC in Crystal is... just as hard/easy (pick one) as writing it in C: it's exactly the same. Language doesn't matter... Expect that you can know about allocated objects (you can know types, class and struct definitions) and thus can write a precise GC instead of a conservative one (that blindly walks allocations and believes everything may be a pointer).
An advantage of ImmixGC is that the algorithm looks quite efficient... or maybe it's mostly because it's a precise GC (as stated in the video), and tailored for Scala.
I support @bararchy that we should concentrate on writing a custom, precise GC, tailored for Crystal. It's not that hard to get something working. It's hard to get something robust and efficient for many different scenarios, though. Immix (paper and scala-native implementation) may a good help to get started.

@RX14, scala-native only has a few major contributors. @LukasKellenberger did the entire immix implementation with the guidance of @densh (scale-native primary dev)

Hey guys, at the moment our GC implementation is very much hardcoded against Scala Native internals. It's not impossible to decouple it as a separate library and share between multiple projects if there is interest in that kind of thing. Given the poor state of open source GCs on LLVM, it would be great if we could share efforts and work together towards having at least one high-quality open-source implementation.

@ysbaddaden, a pure Crystal implementation would be cool, but seeing as @densh has reached out with with a willingness to share there work..

Can you actually create a robust and precise GC that would cater multiple languages ?

@bararchy yes, IIRC LLVM has support for generating precise GC information in a number of formats (not for free, the crystal compiler would need a fair bit of work on how to tell LLVM this). You could implement a GC which used one of those formats.
I disagree on the need for a pure-crystal GC any time before 1.0. It's very low down the priority list for me. There's little point spending lots of time on performance optimizations: we're generally considered "fast enough", and we have lots more more important feature work to do.

@bararchy The only major thing we need to agree on is the layout of the per-object metadata necessary for precise heap collection (stack and registers are conservative.) Currently our RTTI stores an offset array that lists all GC-able fields in the given object. Additionally we treat arrays specially due to their variable-size nature.

I'd be interested in having an open-source, high quality GC available for all LLVM consumers. I'm implementing simplexhc, a haskell-to-llvm compiler, so I'll need a GC at some point as well.
I'd definitely help with the effort of ripping out the scala-native GC into a reusable library.

@densh, I think that with scala-native you guys have arrived on some really amazing ideas that will advance that state of "high performance high level language programming". But maybe you have just discovered another area where you can advance llvm languages as a whole. Thank you for looking into this.

I'd gladly accept any (good) PRs that add a gc/immix.

Cool ! Will be interesting to follow on that, if there is such traction and so many interesting parties maybe a standalone project is indeed a good idea

@densh, @pnloyd, @bararchy: do we wish to create a separate empty repo where start pulling out code? How do we organize this? :)

Creating a new repo for this is a great starting point. Would github.com/scala-native/immix  work for everyone?

@densh, I think you shouldn't take into preference Crystal or even any llvm language. Maybe what you feel will work out for open source environments as a whole (with maybe llvm languages taking a special consideration?). I'm really trying to say it's awesome that Crystal can benefit from with so much, but it could potentially be valuable to so many different projects, even outside llvm.

@ysbaddaden

An advantage of ImmixGC is that the algorithm looks quite efficient... or maybe it's mostly because it's a precise GC (as stated in the video), and tailored for Scala.

We contrast our immix implementation with precise mark-and-sweep on the same benchmarks in our talk. Here is MS (with @LukasKellenberger on the right):

Compared to Immix (@me on the right):

:
As you can it's not just wins due to precise heap. Immix is way more efficient, especially on GC-heavy benchmarks.

btw Rubinius also uses Immix GC. Some time ago I've tried to check how can it be applied in Crystal but didn't get far.

I guess a separate project/repository for sharing between different projects would be great, if possible.
More leverage power too when multiple projects and multiple eyes look at things.

There has been some discussion about GC problems with Amber + websockets. While I don't know the details or where the problem actually lies with the GC here, there was some discussion of perhaps the current GC not being aggressive enough where GC doesn't clear all of the memory if sockets are stored in a data structure.
This discussion led me to think (perhaps erroneously) that perhaps if there are some deep seated problems with the GC causing issues, perhaps Immix could help resolve this. I'm doubtful that this issue goes this deep, but it still crossed my mind and I thought I'd mention it.
I agree with previous remarks that having multi-threading  and even Windows support (even the guys at nanobox mentioned how they would consider using crystal for a rewrite due to their fondness of Ruby instead of Go if there was native Windows) are higher priorities right now for the project holistically, but I also agree with @RX14 about getting real tangible input and I'm grateful that @densh chimed in and started the effort on splitting it off for reuse. This is definitely the right move forward here.

@ysbaddaden, I thought of another thing to consider in the "should Crystal's GC be written in Crystal or C debate. Part of the scala-native project involves compiling to yet another IR between scala and the llvm IR. The reason for this? @densh suggests that llvm has biases towards optimizing for C/C++ like code, which makes a lot of sense. So there solution is to have a second IR that they can then "pre optimize" to generate llvm IR that is more like what clang might generate.
The implication of this is not a fun thought to entertain, that Crystal might not be able to generate llvm IR that that can reap the full benefits of the llvm optimizations. But this does open up an argument that as a whole, all Crystal programs may be able to achieve their ultimate performance if the GC is written in C, seeing as Crystal may have a fundamental barrier to achieving optimal code generation via llvm.
Seeing as a GC is something you have running no matter what in every program, it would seem wise not to compromise on it's performance.

I's not hard to replace good-known boehm with immix, really.
But plesase show me weapp reasons and I'll do.

Please let's keep focused: this issue is about ImmixGC.
Thank you @densh! Precise GC is the largest optimization, but Immix closes the gap even more. I looked at the Immix paper, and it looks very clever. The paper lacks details, but they can be found in the ImmixGC implementation.
Some blocking issues to try ImmixGC:

The precise GC is tied to Scala Native objects (stating the obvious);
I didn't find how to report stacks to scan before a collection (aka fibers); we previously had boehm-gc to make public a private API for that.

And some features we'll eventually need:

Thread safety: the Immix paper defines that mutating the block lists should be synchronized, then each thread has it's own allocator that keeps the last block it got from the heap;
mmap isn't portable to Windows (but File Mapping should do the job).

Overall, I think adapting ImmixGC from Scala Native to be a generic GC is a lovely idea, but far from trivial. Different languages have different needs.
In the meantime, I'm learning a lot!
BTW: I found Immix RC that applies Immix to reference counting, to close the gap between Tracing and Reference Counting garbage collectors.

Don't forget: Scala (being Java's spin-off) has no interior pointers (ie, that points into middle of allocation).
If Crystal were just "compilable Ruby" then it had that property too.
But Crystal has real Pointer, and pointerof(@some_property). So, it will be much harder to find start of allocation (than for Scala) (Boehm searches start of allocation), and it will complicate compaction a lot (Scala's immix does compaction?).
So, even without fibers, it will be quite complex project.

@funny-falcon, Don't assume that's true. Scala-native doesn't run on the JVM and was designed to have some extremely seamless C interop, it's a different animal than vanilla on JVM scala. pointerof(@some_property) equivalent might or likely exists in scala-native.

Hey guys, our implementation of Immix handles inner pointers only for conservative roots (stack and registers). It does not support it for object fields.
And we don't do any compaction yet.

@ysbaddaden I also found a conservative variant of Reference Counting Immix.
But in an case, in Go 1.3 implicit pointers (ie defacto pointers that didn't have the pointer type) was forbidden in the move to make their collector into a precise collector. I guess that is what will need to happen here too.

Just gonna leave this here as a reference. The algorithm seems relatively straight forward.
http://www.cs.utexas.edu/users/speedway/DaCapo/papers/immix-pldi-2008.pdf

Hi, related project here 👇
https://github.com/ysbaddaden/gc

inko-lang also uses Immix: https://inko-lang.org/faq/#header-how-does-immix-work


help/logging-out: Use tabbed navigation for instructions.

@rishig: I think we might have to modify the CSS of the content that ends up inside the tabbed panes. Let me know what you think! Thanks! :)

@rishig: The build failing is due to the casper flake! :)

cool, thanks! I think it looks pretty good already. I think we can just copy the zendesk styling, e.g. https://get.slack.help/hc/en-us/articles/214613347-Sign-out-of-Slack#desktop-web-1.
Also, how hard would it be to

add navigation, e.g. the #desktop-web at the end? For linking from the mobile app, would be nice to be able to just link to the mobile instructions.
autodetect your user agent and choose a tab appropriately?
reduce the amount of text needed in the help file? E.g. via a macro or something in the bugdown processor.

@rishig: I spent some time reading the code that would allow me to make the changes you requested.
Okay, so here are my thoughts on the questions you asked:

I'm not sure I understand. What do you mean by "add navigation ... at the end?"
That should not be too hard. I think we already have the requisite code in static/js/portico/landing-page.js. It would simply be a matter of activating the right tab when rendering the landing-page JS bundle.
Having written a few Markdown extensions for Zulip, I think this is semi-hard, but definitely doable. The difficult part would be to come up with syntax that doesn't clash with existing extensions and code block syntax and what not! So, something like:

~~~ tabbed("installing-on-macos", group=1)
### Instructions go here
~~~

where, group=1 indicates different sections of tabbed instructions, in the case that we end up with a page that has two sets of tabbed instructions or something.
What do you think? Also, which one would you like to see get done first?
Thanks!

Thanks for looking into it!

Sorry, at the end of the URL. So https://zulipchat.com/help/logging-out#android would go to the Android tab.
Cool! Let's do it, then; will make it easier to add links to the help pages from the mobile app.
ok, let's brainstorm on czo.

which one would you like to see get done first?

Let's just do them in order of easiness!

Nice!

Looking at the code it seems like we can actually do better, with syntax like

{tabbed_section_start}
{tab desktop|Desktop/browser}
desktop content
{tab ios|iOS}
ios content
{tabbed_section_end}

Technically we can even do it without the initial {tabbed_section_start}, but I think it'll be good to have it for readability :).
This will also allow us to have multiple tabbed sections in an article.

There are only a small number of possibilities for the tab names. So we can do something like we do in the top of zerver/lib/bugdown/help_settings_links.py. The syntax will then be something like

{tabbed_section_start}
{tab|desktop-web}
desktop content
{tab|ios}
ios content
{tabbed_section_end}

Let's rename {tabbed_section_start} to {start_tabs} and {end_tabs}.

Possibly we'll want to make it more serious looking, like {!start_tabs!}, but that's an easy change for later.
As follow-up, we should rename {settings_tab|foo} to {go-to-settings|foo} or similar so that we don't overload tab.
Thanks @eeshangarg!

@rishig: Thanks for the review! I just updated this:

The code looks much cleaner now in general. I rewrote most of it. The initial commit was just a WIP to get feedback, the latest changes should be more readable now.
Also, we can't use {!start_tabs!} since the exclamation mark syntax clashes with our include Markdown extension.
This extension should be able to handle multiple tabbed sections in one Markdown file.

Looking forward to your feedback! Thanks!

@showell: Updated! :)

@rishig, @showell: I just pushed a couple of more commits to this:

Added support for detecting the user's OS and activating the right tab automatically.
Also migrated help/desktop-app-install-guide.md to use tabbed instructions.

For the former, please keep in mind that I am not a JavaScript programmer by any means, so if anything I wrote is terrible, please let me know, and I'll fix it right away! Thanks! :)

Merged, thanks @eeshangarg! This is a huge step forward for the help docs.
As followup I'll see how we can style these appropriately.


Added return type annotation to completecases(df).

Fixes #1212

Can you add an example of the failing behavior in #1212 as a test?

I suppose I could also test DataFrames.na_omit(df) which just tries to index with the result of completecases, but that seems unnecessary

@nalimilan I think the issue is that isna doesn't always return a Bool, so julia can't infer the type in the broadcast.
julia> code_typed(isna)
6-element Array{Any,1}:
 CodeInfo(:(begin
        return $(QuoteNode(true))
    end))=>Bool
 CodeInfo(:(begin
        return (Core._apply)(DataArrays.getindex, (Core.tuple)((Core.getfield)(da, :na)::BitArray{N} where N, I)::Tuple{BitArray{N} where N,Real}, Is)
    end))=>Any
 CodeInfo(:(begin
        return (DataArrays.getindex)((Core.getfield)(pda, :refs)::Array{R,N} where N where R<:Integer, i)::Integer == 0
    end))=>Any
 CodeInfo(:(begin  # line 57:
        $(Expr(:invoke, MethodInstance for depwarn(::String, ::Symbol), :(Base.depwarn), :($(Expr(:invoke, MethodInstance for string(::String, ::Vararg{String,N} where N), :(Base.string), "isna(x::AbstractArray)", " is deprecated, use ", "isna.(x)", " instead."))), :(DataArrays.#89###oldmtname#663))) # line 59:
        return (Base.broadcast)(DataArrays.isna, x)
    end))=>Any
 CodeInfo(:(begin
        unless (DataArrays.NAtype <: $(Expr(:static_parameter, 1)))::Bool goto 3
        return ((DataArrays.getindex)(a, i) isa DataArrays.NAtype)::Bool
        3:
        return false
    end))=>Bool
 CodeInfo(:(begin
        return false
    end))=>Bool

julia> methods(isna)
# 6 methods for generic function "isna":
isna(x::DataArrays.NAtype) in DataArrays at /Users/rory/.playground/share/dataframes/packages/v0.6/DataArrays/src/natype.jl:60
isna(da::DataArrays.DataArray, I::Real, Is::Real...) in DataArrays at /Users/rory/.playground/share/dataframes/packages/v0.6/DataArrays/src/dataarray.jl:252
isna(pda::DataArrays.PooledDataArray, i::Real) in DataArrays at /Users/rory/.playground/share/dataframes/packages/v0.6/DataArrays/src/pooleddataarray.jl:232
isna(x::AbstractArray) in DataArrays at deprecated.jl:56
isna(a::AbstractArray{T,N} where N, i::Real) where T in DataArrays at /Users/rory/.playground/share/dataframes/packages/v0.6/DataArrays/src/abstractdataarray.jl:51
isna(x) in DataArrays at /Users/rory/.playground/share/dataframes/packages/v0.6/DataArrays/src/natype.jl:61

This shouldn't be an issue once the two methods that return Any are deprecated, but until then annotating it in this code is probably the best option.


Tell user the local version is used in case of version mismatch

Judging from the code, it looks like the global version always calls the local one (https://github.com/gulpjs/gulp/blob/master/bin/gulp.js#L119). In case of a version mismatch, it might be helpful to point this out.

I came here looking for a way to make gulp use the local version when available, only to find out that is what it does. I think it would be great if that was communicated more clearly in the error message.

+!

My coworkers agree, too.

Me or @phated will take a reasonable looking PR


Widget mechanism

Hello,
I have used an existing theme for my new website. But I have to modify it to add (for instance) VCards or other beautiful stuff. If ever I want to update my theme or switch to another one, I will lose the code parts.
It would be great if there was a wordpress-like, reusable widget mechanism. I think we would have to:

create a widget (as a piece of template? with more extensionability?);
insert a widget area inside the theme;
instantiate widgets inside config.toml or config.yaml.

For now I understand that there is no normalization for that process, which IMO prevents well-meaning people to publish finely tuned (and customizable) site blocks, just like in any content management system.
Do you think like me that it would be a good enhancement?

This has been discussed before, but noone has really taken it any further.
We need someone to write down some kind proposal/spec of how this should work.
A start would be to list some common widgets and how they should work and then sketch a solution based on that.

Okay!
So below is the proposition.
Widget examples
With a short brainstorm, I imagined the following widgets:

VCard: a widget that displays a hcard (it is parsed and used by google)
List categories
List the n last posts (with options for excerpts, thumbnails, author, date, …)
Display an arbitrary text (with options allowing markdown, html, exec -- see #796)
Showcase/slider to display slides for a homepage, for instance
Links. Display arbitrary links.
Displaying menus!

Specifications / capacities

The widgets would live in layouts/widgets/
They could be git repositories or maybe (I don't know how it works) with go get. One another (big but nice IMO) solution would be a hosting centralization, as for every CMS. The widgets.gohugo.io or extensions.gohugo.io website would host a bunch of registered plugins. That would enable creating a hugo install routine. But that would be for (much) later.
The themes would declare widget areas in a way like {{ widget_area "footer" }}, {{ widget_area "content_bottom" }} or {{ widget_area "sidebar" }}.
The main config file would declare a widgets collection, describing what is in each widget area. Each widget would be called with its name (identifier given by the widget's creator), and the user would set some other options. These options are variables specified by the widget's creator. The widgets' declaration would be possible in two ways:

declaring the widgets as a collection inside the config.toml or config.yaml file. Example (for YAML mode):

widgets:
  main-sidebar:
    - type: vcard
      name: "King Arthur"
      phone: (++123)456789
      photo: "https://upload.wikimedia.org/wikipedia/commons/a/ad/Boys_King_Arthur_-_N._C._Wyeth_-_title_page.jpg"
    - type: plain-text
      content: "Website generated by **[Hugo static site generator](https://gohugo.io/ "Which is so beautiful")** on *{{ exec date }}*."
      options: allow-html, allow-markdown, allow-exec     # wink at issue https://github.com/spf13/hugo/issues/796
    - type: list-categories
  content-bottom:
    - type: disqus
      id: bstewiawzpoljzuisaei
  post3-widgets:
    - type: showcase-bigflat
      slides:
        - title: "Meet us at the point"
          text: Lorem ipsum dolor sit amet […]
          picture: https://discuss.gohugo.io/uploads/default/original/2X/3/3999949154d616b767f5984f74f89fb4cea50535.png
        - title: "Hugo is so nice!"
          text: Lorem 2 ipsum 3 dolor 4 sit amet 5 […]
          picture: public/some-other-picture.jpg

The bonus would be (see the upper code, last section) the ability to declare a widget area inside a post content. This would need to have a param.allow-custom-widget-areas (or like), and IMO to add a custom-widget-area: true inside the post header. Then, inside your markdown post you add a {{% widget-area post3-widgets %}} shortcode.
In my opinion, such a functionality would help the massive adoption of Hugo. Indeed, that would enable people to use Hugo without writing code, as it would decrease the need to dive into theme development.
That would also enable professionals (i.e. web developers) to take more Hugo into account. We don't have to reinvent the wheel, and IMO the themes don't have to manage blocks like widgets.

I am currently working on it and will submit a first PR asap.

Official discussion is here: https://discuss.gohugo.io/t/widget-mechanism/4428

The templating logic inside tpl does not import hugolib/, but I assume a widget.go should live in there. Would you advise me to import hugolib/ inside tpl/template_funcs.go, or to put all widget logic in tpl/?

Hello,
What do you think of developing this now?


Any chance to support tensor cores?

お金に余裕ができてTensorコアを搭載したグラボを購入出来たら検証予定です。

In case someone would want to integrate this. It seems relatively straight forward on CuDNN 7.6.5 and above.
Relevant documentation overview: https://docs.nvidia.com/deeplearning/sdk/cudnn-developer-guide/index.html#tensor-ops-conv-functions

Doen anyone verify which Tensour Core is active or not on the newest Waiuf2x-Caffe?


[GERONIMO-6601] adds Automatic-Module-Name

the duplication of the maven-jar-plugin configuration in every module pom.xml seems required with the current project hierarchy.
The value of
<Automatic-Module-Name>

is set in a property <automatic.module.name> in the event that this should change.
The property values are consistent with the top-level exported package name with a few exceptions.  Several specs export more than one primary package, for example, geronimo-jcdi_1.0_spec, that exports
javax.decorator and  javax.enterprise.  In that case, I arbitrarily chose javax.decorator.

Hi Christopher,
3 small points:

if you want you can modify a common parent pom to make it automatic and just configured from a pom properties
for cdi enterprise is maybe better than decorator. That said I would just pick java.cdi for this one until it is spec-ed
some names are not valid, for instance javax.json already exists and should be java.json so maybe have a check iteration against last versions of the specs (module-info.class or the automatic module name)

otherwise i like this PR which makes us clearly going in the right way.
Romain

Hi Romain,

if you want you can modify a common parent pom to make it automatic and just configured from a pom properties
To make this work, the plugin definitions for the maven-bundle-plugin and maven-jar-plugin would have to be moved to a parent pom.  There is a parent pom in spec-parent, but this is not generally used by the specs.  This would also involve adding property variables and values for the bundle instructions in the spec pom.   And, the spec poms also have an existing <parent>, but that pom could be merged with the extant spec-parent pom.  I can do this though perhaps it should be done with a separate PR.

RE: 2 and 3.
OK on 2.  Note that the module name uniqueness is not significant, since the visible package(s) in the jar is what JPMS is looking at.  So, naming a module java.json when it exposes javax.json will not prevent the collision with another module that exposes javax.json.

Ok fair enough for the parent pom point.
You are right with the module names point but we don't have any choice here, if you want as a user to write portable code all the API must have the same name and some spec already picked their name so we must respect it. Note that even the JRE tends to remove the x of javax in the module names, not sure why though.

Hello, do you plan to get this PR merged anytime soon?


DeferredFutureTask always throws CancellationException when cancelled

Hey jdeferred team,
I really like your library.
When calling deferredFutureTask.cancel(false) or even with true. The call will always throw a CancellationException because it won't return after checking the cancelled state. So, the get method gets called which actually throws the CancellationException for a reason.
I attached a fix and a test for it.

@aalmiray could i trouble you to validate? :)

aye, aye captain! [insert Warcraft II sound wave/] ;-)


⚠ PrivateHD has degraded performance

In 7e72ec9, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 2632 ms

Resolved: PrivateHD performance has improved in 3ac7c71.


Export all scalar values for all steps

One can use guild compare to export the scalar values for the last step, but it would be helpful to export the data for all steps.
See also this answer for a temporary solution suggested by Garrett:
https://my.guild.ai/t/how-can-i-export-all-scalar-values-for-all-steps/229/2?u=emgong

I have an update to this here.