Refactor indexer

Refactor modules/indexer to make it more maintainable. And it can be easier to support more features. I'm trying to solve some of issue searching, this is a precursor to making functional changes.
Current supported engines and the index versions:

engines
issues
code

db
Just a wrapper for database queries, doesn't need version
-

bleve
The version of index is 2
The version of index is 6

elasticsearch
The old index has no version, will be treated as version 0 in this PR
The version of index is 1

meilisearch
The old index has no version, will be treated as version 0 in this PR
-

Changes
Split
Splited it into mutiple packages
indexer
├── internal
│   ├── bleve
│   ├── db
│   ├── elasticsearch
│   └── meilisearch
├── code
│   ├── bleve
│   ├── elasticsearch
│   └── internal
└── issues
    ├── bleve
    ├── db
    ├── elasticsearch
    ├── internal
    └── meilisearch

indexer/interanal: Internal shared package for indexer.
indexer/interanal/[engine]: Internal shared package for each engine (bleve/db/elasticsearch/meilisearch).
indexer/code: Implementations for code indexer.
indexer/code/internal: Internal shared package for code indexer.
indexer/code/[engine]: Implementation via each engine for code indexer.
indexer/issues: Implementations for issues indexer.

Deduplication

Combine Init/Ping/Close for code indexer and issues indexer.
~Combine issues.indexerHolder and code.wrappedIndexer to internal.IndexHolder.~ Remove it, use dummy indexer instead when the indexer is not ready.
Duplicate two copies of creating ES clients.
Duplicate two copies of indexerID().

Enhancement

[x] Support index version for elasticsearch issues indexer, the old index without version will be treated as version 0.
[x] Fix spell of elastic_search/ElasticSearch, it should be Elasticsearch.
[x] Improve versioning of ES index. We don't need Aliases:

Gitea does't need aliases for "Zero Downtime" because it never delete old indexes.
The old code of issues indexer uses the orignal name to create issue index, so it's tricky to convert it to an alias.

[x] Support index version for meilisearch issues indexer, the old index without version will be treated as version 0.
[x] Do "ping" only when Ping has been called, don't ping periodically and cache the status.
[x] Support the context parameter whenever possible.
[x] Fix outdated example config.
[x] Give up the requeue logic of issues indexer: When indexing fails, call Ping to check if it was caused by the engine being unavailable, and only requeue the task if the engine is unavailable.

It is fragile and tricky, could cause data losing (It did happen when I was doing some tests for this PR). And it works for ES only.
Just always requeue the failed task, if it caused by bad data, it's a bug of Gitea which should be fixed.

I don't think it's a good idea to drop ES aliases because even if the old index is not dropped it still should use alias for search so that when gitea is started and new index is still built alias would still point to old index and old one can be used and when it's done it can be changed to point to new one and there won't be any downtime

I understand. But I didn't drop the aliases, I gave it up. So the old Gitea could still use the aliases.
Think about this:

Gitea version A, it writes to index_name.v1, reads from index_name (an alias of index_name.v1).
Gitea version B (after this PR), it writes to index_name.v1, reads from index_name.v1, not the alias.
Gitea version C (in the future), it writes to index_name.v2, reads from index_name.v2.

So when version B is starting, version A can still read from the index by aliases. And when version C is starting, it will build index index_name.v2, version B can still read from the index because it reads from index_name.v1. So there won't be any downtime.
In contrast, sharing an alias is not a good idea. There is a potential compatibility issue:

The old version writes to index_name.v1, reads from index_name (an alias of index_name.v1).
A new version builds index_name.v2, and it has a new format that is not compatible with index_name.v1.
The new version points index_name to index_name.v2, then the old version will read from index_name.v2, and it will get down because it cannot recognize the data in index_name.v2.

I don't see anytime soon having index changed so much that it would be completely incompatible with old previous version - most probably we would add fields etc not completely change them because for large instances that would me completely reindex all code search that could probably take multiple days and in that time would not work at all. So code changes must be made so that it is not so.
With alias if ever we need to make full reindex (like populating new fields etc) while it is in progress it can still work with old index (even if in limited functionality with data that is in old index) and that is way better than not having code search functionality for multiple days...

I don't see anytime soon having index changed so much that it would be completely incompatible with old previous version - most probably we would add fields etc not completely change them because for large instances that would mean completely reindex all code search that could probably take multiple days and in that time would not work at all. So code changes must be made so that it is not so.
With alias if ever we need to make full reindex (like populating new fields etc) while it is in progress it can still work with old index (even if in limited functionality with data that is in old index) and that is way better than not having code search functionality for multiple days...

Hmm, I never thought it would take days. Yes, it could happen. I think you are right.
I need some time to keep the aliases, because the old issue indexer used the index name (which should be alias name) directly to create index, so I need do some thing like: rename index_name to index_name.v0, remove index_name, create alias index_name, bind the alias to index_name.v0.

@lafriks Kindly ping. 👀

I think this refactoring PR can't wait too long. Since it has already received two approvals, I will wait another 2 days. If no one objects, I will merge it. If this PR causes any regression, please let me know by @ me.

@lafriks Please review again

I think @lafriks had the chance to review already and didn't use it.
The "2 day deadline" was already three days ago.


Contents Only Displays Level 2 and Below to Last Level One Heading in File

Sample_input_file.md
mkdocs-enumerate-headings-plugin

**test file**

# First Level One Heading

text

## First Level Two Heading

### First Level Three Heading

## Second Level Two Heading

more text

# Second Level One Heading

yet more text

## First Sub-heading

still more text

Output
Table of contents
1.1 First Level Two Heading
1.1.1 First Level Three Heading
1.2 Second Level Two Heading

Expected Output
Table of contents
1 First Level One Heading
1.1 First Level Two Heading
1.1.1 First Level Three Heading
1.2 Second Level Two Heading
2 Second Level One Heading
2.1 First Sub-heading

@flywire let me know if the newly released v.2 addresses this problem

test file

1. First Level One Heading
text

1.1 First Level Two Heading
1.1.1 First Level Three Heading
1.2 Second Level Two Heading
more text

2. Second Level One Heading
yet more text

2.1 First Sub-heading
still more text

Table of contents
1.1 First Level Two Heading
1.1.1 First Level Three Heading
1.2 Second Level Two Heading

I expect 2.1 First Sub-heading to be displayed

Try reinstalling:
pip install --upgrade --force-reinstall mkdocs-enumerate-headings-plugin

The heading renders correctly:

Reinstalled and running V0.2
test file

1. First Level One Heading
text

1.1 First Level Two Heading
1.1.1 First Level Three Heading
1.2 Second Level Two Heading
more text

2. Second Level One Heading
yet more text

2.1 First Sub-heading
still more text

Table of contents
First Level Two Heading
  First Level Three Heading
Second Level Two Heading

I expect Table of contents to display numbers.
mkdocs.yml
site_name: Tutorial how to use Travis CI with C++
repo_url: https://github.com/flywire/travis_cpp_tutorial/
edit_uri: edit/Development/docs/

theme:
    name: material

markdown_extensions:
    - toc:
        permalink:
    - admonition
    - def_list
    - nl2br
    - pymdownx.magiclink
    - pymdownx.snippets
    - attr_list
    - markdown_blockdiag:
        format: svg

extra_css:
    - css/extra.css

plugins:
    - search
    - enumerate-headings

nav:
    - Tutorial: testfile.md

So I understand it works correctly for you now.

Should probably support turning level one heading on in TOC too.

I don't plan to support showing the enumeration in the table of contents as well. If you would like to work on a PR, I'd be happy to provide some guidance though. We could open a new issue to discuss intended behaviour for TOC.


Nix flake enablement for landscapercli

What this PR does / why we need it:
We want to enable landscapercli for the nix community.
# with Nix (macOS, Linux, and Windows)
nix run github:gardener/landscapercli -- version

# development version
nix profile install github:gardener/landscapercli

landscaper-cli --help

Thanks @vasu1124 for your contribution. Before we merge this (and therefore have to support this in the future), I'd like to know ifsomeone concretely asked for this ? Or do you have other reasons for this PR ?

Thanks @vasu1124 for your contribution. Before we merge this (and therefore have to support this in the future), I'd like to know ifsomeone concretely asked for this ? Or do you have other reasons for this PR ?

We indeed have teams that enable their dev environments with nix, which transports a number of advantages. I think the overhead is not too much. This nix flake btw. also automates the binary for aarch64. The other option that you could also consider is homebrew. => make it simple for users to consume and stay uptodate with landscaper-cli.


New Frontpage redesign

We've been given a concept for the frontpage refined from our existing elements. We have design files for each of these elements

Looks nice. Where do I get the elements? Can you send them to me?

Everything is here: https://www.dropbox.com/sh/onquy2ny2ag4dr7/AADsjB9eQgYjrolzRIiEVNwSa?dl=0. I'm currently uploading it to Github.
I'm not sure I'd suggest we do everthing here, but it's certainly a step above what we've got now.

My only concern is still whether it is too widget-centric rather than request-centric. We'd need to know what actually goes in that "gif" hole, because without something sensible we are just filling space for the sake of the design rather than the functionality of it. The walkthrough gif thing could be good here. Overall it presents better than I expected though.

I think we're imagining a walkthrough in the gif spot. Until the new plugin launches, it could just be the logo or something else inoffensive.
In terms of widget-centricity, I agree, it's a concern. My way to address it would be:

a context dependant landing page. If you land on mobile, we'll show you text/images for that, if you land on PC we'll show you that. All can mention the institutional version. That gives a clear first action that makes sense.
Add a panel directly below, or at least, under the map which is "request" centric, or generally broader. This could be combined with an ask for folks to help us with managing the system. That will keep it front and centre for anyone who cares even a little bit, but keeps strong and simple call to action up top.

Glad it's better than you expected though! I certainly felt like it was a step forwards, but one we can of course adjust.

@chealsye supports a request panel

@markmacgillivray we're currently assuming this is the homepage strucure move forwards
Some notes on the design:

Copy on this page isn't suggested.
Contribute is currently "explore requests". This term should actually be used over "explore requests" IMO
About page should be in the nav
The extra footer section here isn't required in this build

Here is an updated version of this with an about section, which aims to get at the request stuff, and a optional section for institutional stuff.

@markmacgillivray How much of this design mockup are you using for the new design for next week and next month? Are we using that book image? That logo? Tab icons?
I think, if Joe agrees with my copy, we could keep it to that minimal one block/panel AND include requests. But we need to figure out another colour likely for one of the dark blues or move the features on grey block up.

For next week we should remove the "packages" bit, and replace it with the about bit.

I'd love a how to gif, but perhaps it'd be better to wait until things are finalised.
In the mean time formatting it in the centre is a simple solution… but something there would be best. What user stats do we have?

@markmacgillivray FYI - all the copy for the website is in this Google Drive folder: https://drive.google.com/drive/folders/0B3zC2zJzpxoIRm9KS1pKcFVfT3c
@JosephMcArthur has to clear copy still, but the team page can go up whenever.

The old book image in the repo is 1.4MB large. That does not seem like too good a way to build a first page experience, particularly when @JosephMcArthur you were so concerned about page load speed in the past. I can try editing the image and reducing the quality down as far as possible, but that could have some effect on visual quality, of course. This is probably because we are still just mocking up at this stage, but in order to ensure we can use these designs effectively in future we will need images, icons, etc to be as small as possible to maintain page speed. Either that, or we stop caring so much about how fast things like js and css files load, given that their comparative size is less than a tenth of this one image file. Of course, it is only on the first view of a site by a new user that this really matters, because after that their browser will cache the image - but then, the same is true of the js and css files too, hence I just thought I would bring it up, so we can clarify which approach we are taking.

Hmm, actually the old book image does not seem to match what is in the mock up - it may be the original image used to generate the mock up, but it has different filters added to it, to lighten and fuzzify it, it seems. In order to use this I would need the altered image, cropped to size and scaled to the focal point we want to actually use on the site. Otherwise I will be spending ages altering images instead of writing code.

Happy with the copy.
Will try and get the image for you tomorrow.

Mark has pushed major revisions to this page now, which are close to this mockup. I count this issue as complete and suggest other issues are made for smaller changes (which are welcome).
Congrats to all on this, it's a big job!


Sort unread streams and topics

Automated message from Dropbox CLA bot
@borisyankov, it looks like you've already signed the Dropbox CLA. Thanks!


Add simple license check

This commit adds a build-time check for a LICENSE file with the BSD 2-Clause "Simplified" license header.
Unfortunately, GitHub's license API does not allow for checking the license type of a repo at a given commit, so we cannot use that here.

For what it's worth, while this passes Travis right now, this would cause build failures due to numerous plugins which don't have licenses, and a few which have the wrong license:
$ for file in *; do
  if ! [ -f "$file/LICENSE" ]; then
    echo "No license file found for '$file'"
  else
    if ! grep -q 'BSD 2-Clause License' "$file/LICENSE"; then
      echo "Possibly invalid license found for '$file'"
    fi
  fi
done
No license file found for 'abexs-idle-notifier'
Possibly invalid license found for 'advanced-notifications'
No license file found for 'bank-tab-names'
No license file found for 'data-export'
No license file found for 'deathindicator'
No license file found for 'detached-camera'
No license file found for 'discord-loot-logger'
No license file found for 'emoji-palette'
No license file found for 'emojiscape'
No license file found for 'essence-running'
No license file found for 'ess-pouch'
No license file found for 'fake-iron-icon'
Possibly invalid license found for 'fixed-mode-hide-chat'
No license file found for 'global-consciousness'
No license file found for 'gpu-experimental'
No license file found for 'green-screen'
No license file found for 'health-notifier'
No license file found for 'http-server'
No license file found for 'inventory-summary'
No license file found for 'master-farmer'
No license file found for 'monkey-metrics'
No license file found for 'nature-rune-chest'
No license file found for 'profiles-panel'
No license file found for 'raid-points-overlay'
No license file found for 'region-locker'
No license file found for 'runite-rocks'
No license file found for 'tob-damage-counter'
No license file found for 'tob-healthbars'
No license file found for 'tray-notifications'
No license file found for 'zom-dense-essence'
No license file found for 'zom-leftclick-dropper'
No license file found for 'zom-nmz-util'
No license file found for 'zoom'

I explicitly didn't make the script generate a license because that seems like it wouldn't legally enforceable.
I don't particularly care if the license is BSD-2, as long as it is permissive enough for us to distribute the resulting binary on it's own, so maybe just a check that the file exists is fine.
Maybe we can check the commit time and only enforce this for plugins updated after a certain date so we don't need to update ~20 plugins. Something like [ "$(git log -1 --format=%ct "$PLUGINFILE")" -gt<PHONE_NUMBER> ] maybe

Since people are submitting plugins to us in the first place anyway, I figure something to generate a license in the first place would be fine and would help cut down on "Please add a license" type reviews. I can definitely make the license check more permissive. From https://choosealicense.com/licenses/, it looks like Apache, MIT, Boost Software, and Unlicense don't require distributing source. That said, Apache and MIT seem to indicate we'd need to distribute licenses even with binaries so even those seem incompatible.
As for licensing other repos, I see this as a long-term effort that we shouldn't pass up. I don't mind waiting to get this PR merged while we reach out to those plugin authors to license/change licenses as needed.

I've dropped the template change and changed the license check to be a simple file check. From my previous comment, I feel we should spend the time to make sure all hub plugins are licensed so I'd prefer not adding leniency for older submissions.

Abex has a commit for the new build script which will accomplish this.


Why does ribbon ServerStats use tumbling windows instead of sliding ones?

I'm trying to rely on ServerStats.getFailureCount() and ServerStats.getResponseTimeAvgRecent() in order to build my own load balancing rule.
And I'm confused by the fact that those methods return the values for the PREVIOUS time window/buffer (1 second actually). I'm going to make the window size configurable. We need it to be a bit longer, as we don't have such a heavy traffic as Netflix has. Thus I would get kinda obsolete stats, that were collected N seconds ago.
The question is: why don't you use sliding (aka rolling) windows for ServerStats? AFAIR, Servo should contain some appropriate monitors that could be used here. Is there any reason to use tumbling windows? Maybe there is some idea behind that I don't yet grasp?
Thanks in advance!

+1


Fix for #14471

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
practically not

Tests pass?
yes

Fixed issues
#14471

Merged. Thanks!


Game's window starts up at 1024x576 when it's supposed to be 1280x720

I don't know if this is a bug, but the game's window is at 1024x576 when according to the code it should've been 1280x720. Therefore, the whole screen gets squeezed like this. Yeah you can change the resolution via options to fix it, but the problem always happens when you boot up the game.

i don't think this problem matters anymore, the latest release seems to have fixed it now.


Swap/Redeem UI refresh build

Purpose: Build the refresh of the Swap/Redeem functionality of the PORTERS dApp from the new  Figma designs
Skills needed: React Experience
Resources:

New Figma Designs: ( https://www.figma.com/design/vdVMzD8Vn7MuwGilo0xV4C/PORTERS_SWAP%2FREDEEM_UI?node-id=0-1&t=UmYdPA6mQz7xY7Ap-1 )
Existing FrontEnd Repo: ( https://github.com/porters-xyz/gateway-demo/tree/develop/web-portal/frontend )

Hi  @boucherbox, I'd be interested to take this on. I'm a web developer with an interest in web3 tech, with experience developing in Typescript and Python. What would be required to be assigned this task and what is the bounty worth once completed?
Typescript Work

Designed & built a Voting Delegation Dashboard for the APWine DAO using React/Typescript/Tailwind - https://vote-delegation-dashboard.vercel.app/
Browser plugin related. Added support for Zora NFTs viewing & the Celo blockchain onto the Mask.io browser plugin - https://github.com/DimensionDev/Maskbook/commit/810999f38a09df8d5cefb490b4ca475b837458bc & https://github.com/DimensionDev/Maskbook/commit/c5cfdf393baf6cf7997f66cbabc5e5952dc8cb4d
Contributions to the Shapeshift Web App & related KeepKey hardware wallet features. - https://github.com/shapeshift/web/commits?author=brymut

Python Work

Integrating price data for Superfluid tokens into the Gnosis Safe web app backend - https://github.com/safe-global/safe-eth-py/pull/381
Pylint plugin for improving code analysis for when using Django, forked from pydev - https://github.com/brymut/pylint-django

You can also have a look at my Dework page: https://app.dework.xyz/profile/BryanMutai
Discord Handle: bryanmutai
Ready when you are :)

hey all! you can use n0va for a bounty payout platform https://www.n0va-io.com/discover/porters-xyz/gateway-demo
once a dev merges the approved pull request, the developer will get the pool of money allocated to the issue
if you have any more questions feel free to reach me on X https://x.com/Kalpizzy7

Hey! I can help with this... please assign this to me

can you assign this to me?


Fixed typo in  in ziputil.cpp

Building the project fails because  isn't included in ziputil.cpp. I'm not a CPP developer, but after changing  to  the project built fine.

Apparently I forgot to include fstream
However for some reason it builds fine for me without explicitly including it. I guess it got included by something else for me.
Just changing sstream to fstream shouldn't work because ziputil.cpp also uses stringstream from sstream
9804215 fixes this by including fstream


libcupti.so missing from Docker.gpu

Environment info:
The latest docker GPU image.
gcr.io/tensorflow/tensorflow:latest-gpu
Issue:
While running mnist_with_summaries.py, you get
tensorflow/stream_executor/dso_loader.cc:119] Couldn't open CUDA library libcupti.so. LD_LIBRARY_PATH: /usr/local/nvidia/lib:/usr/local/nvidia/lib64:
Temporary Solution:
Adding the path to CUPTI to the LD_LIBRARY_PATH environment variable.
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64"
Solution:
Add ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH to Dockerfile.gpu, as in #7206

The fix is already merged so closing this...


Tensor name "InceptionV3/AuxLogits/Conv2d_2a_1x1/BatchNorm/beta" not found in checkpoint files

We cloned your repo and we're trying to replicate the results but we keep facing this error. skipping this checkpoint doesn't doesnt resolve it. Similar errors come up in other model too. Could you help us in debugging it.
system: Python 2.7 and 3.6, tensorflow CPU and GPU error persists between systems.

hi,i have the same quesion ,did you solve it?


Feature Request: Add support for a [blink] text effect

And I'm sure you'd do this anyway, but a way to control the blink speed would be nice as well.

Yep, should be relatively easy to implement

Implemented for v7


firefox, firefox-bin: 50.1.0 -> 51.0.1

Motivation for this change

Multiprocess incompatibility did not correctly register with some add-ons (Bug 1333423)

https://www.mozilla.org/en-US/firefox/51.0.1/releasenotes/
Things done

[X] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

Should this be backported?  (I'm guessing yes.)

In spite of not being a security update, this will not do harm to the stable release, I guess. So we should backport this to ease the next update.

Ugh ... same problem :( If you submit a backport PR I'll merge it, but I can't fix the problem myself right now.

I will make a backport PR.

Made a PR #22206.


omnisharp-roslyn: 1.39.12 -> 1.39.13

Things done
Changelog: https://github.com/OmniSharp/omnisharp-roslyn/blob/v1.39.13/CHANGELOG.md
cc @corngood @ericdallo @gepbird @mdarocha @tesq0

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 369820

x86_64-linux

:x: 6 packages failed to build:

python312Packages.orange3
python312Packages.orange3.dist
python313Packages.orange3
python313Packages.orange3.dist
python313Packages.recordlinkage
python313Packages.recordlinkage.dist

:white_check_mark: 27 packages built:

bandit (python312Packages.bandit)
bandit.dist (python312Packages.bandit.dist)
netexec
netexec.dist
omnisharp-roslyn
python312Packages.bottleneck
python312Packages.bottleneck.dist
python312Packages.dploot
python312Packages.dploot.dist
python312Packages.linode-api
python312Packages.linode-api.dist
python312Packages.mkdocs-git-authors-plugin
python312Packages.mkdocs-git-authors-plugin.dist
python312Packages.recordlinkage
python312Packages.recordlinkage.dist
python312Packages.sphinxawesome-theme
python312Packages.sphinxawesome-theme.dist
python313Packages.bandit
python313Packages.bandit.dist
python313Packages.bottleneck
python313Packages.bottleneck.dist
python313Packages.linode-api
python313Packages.linode-api.dist
python313Packages.mkdocs-git-authors-plugin
python313Packages.mkdocs-git-authors-plugin.dist
python313Packages.sphinxawesome-theme
python313Packages.sphinxawesome-theme.dist


Wrong simple_form syntax in wiki

In the wiki page Add a tag field to forms in Rails 4.2 and above
It is mentioned that:

If using simple_form, correct syntax is:
<%= f.text_field :tag_list, input_html: {value: f.object.tag_list.to_s} %>

However, as mentioned in the link provided in that very same page I think it should be f.input and not f.text_field

isn't a text_field a type of input field?

This is what finally worked for me (with select2-rails and SimpleForm):
= f.input :tag_list, collection: @tags, label: "Tags", value_method: :name, label_method: :name, input_html: { multiple: true, class: "js-tags-input tags-input" }

$(function() {
  $('.js-tags-input').select2({
    theme: 'bootstrap',
    tags: true,
    width: '100%'
  });
});


Resource "packet_project" not found

After setting the auth token, and the other available variables, I get the following error:
Error: Not found

  on main.tf line 5, in resource "packet_project" "kubenet":
   5: resource "packet_project" "kubenet" {

Is there maybe a step missing in the README? I've tried setting the name to my project name, and even applied @enkelprifti98 PR.

It seems to be an issue with the Terraform provider rather than this repo itself.

Looking into this @BenSchZA !

Using Terraform 0.12 for reference. Came across this issue in my search: https://github.com/terraform-providers/terraform-provider-packet/issues/45
Wasn't able to, if it's even possible yet, import the resource either. I have a pretty simple setup with a single organization and project.

Let me know if I can give any other context or debugging steps :)

@BenSchZA Which packet provider version are you using for TF?

@enkelprifti98 Good question! I see it's not defined in the repo, probably should be fixed.
+ provider.external v1.2.0
+ provider.local v1.4.0
+ provider.null v2.1.2
+ provider.packet v2.9.0
+ provider.template v2.1.2
+ provider.tls v2.1.1

I just gave it another try, and now it says: Error: You are not authorized to view this organization which seems like an auth token issue. I've used this same auth token to deploy using Terraform from another repo - maybe I'll try compare the config there.

This was the repo that had no issue, but it doesn't require the packet_project resource with organization ID: https://github.com/packet-labs/packet-k3s

@BenSchZA is the token a "personal API token" or a "project API token" ? There is a brief writeup of the distinction here: https://www.packet.com/developers/changelog/project-only-api-keys/

It's a project API token. Thanks for the distinction. Should I create a personal API token?

Hi @BenSchZA are you creating the project form terraform or are you using an existing project?
If you're using existing project, you can only use the project ID as variable, you don't have to decare the resoruce I think.

I'm using an existing project. The resource is used throughout this repo though, but I suppose I could just replace it with the project ID.

After replacing all the references with a Terraform var for project ID, it worked :) Now to see if the cluster works.

Ran into an issue because the bash scripts reference /bin/bash which doesn't exist on my system :P Joys of Nix.

Error: failed to execute "./scripts/kubeadm-token.sh": fork/exec ./scripts/kubeadm-token.sh: no such file or directory

  on controller.tf line 59, in data "external" "kubeadm_join":
  59: data "external" "kubeadm_join" {

Error: Access denied for the current authentication token

  on metallb.tf line 9, in resource "packet_bgp_session" "kube_bgp":
   9: resource "packet_bgp_session" "kube_bgp" {

Error: failed to execute "./scripts/gateway.sh": fork/exec ./scripts/gateway.sh: no such file or directory

  on nodes.tf line 71, in data "external" "private_ipv4_gateway":
  71: data "external" "private_ipv4_gateway" {

@BenSchZA I would recommend using your personal API token as project API tokens aren't able to do certain things such as BGP sessions.

After setting the auth token, and the other available variables, I get the following error:
Error: Not found

  on main.tf line 5, in resource "packet_project" "kubenet":
   5: resource "packet_project" "kubenet" {

Is there maybe a step missing in the README? I've tried setting the name to my project name, and even applied @enkelprifti98 PR.

The terraform templates will attempt to create a new project, no matter what kind of name you will put there. The name will be used for the created project. Project name doesn't have to be unique, so even if you put there a name of an existing project, it should create a new one (with the same name, so probably not a good idea).
The TF code in this repo doesn't attempt to reuse project, unless you modify it like you did.
I think it's still not clear why you had "Not Found" returned by the API. It could have happened if you ran terraform apply (creating the new project), and then manually removed the project, and then ran terraform apply again. Because terraform is storing the ID of the new project in local file, and always uses the ID for fetching the (any) resource from the API, never a name.

After setting the auth token, and the other available variables, I get the following error:
Error: Not found

  on main.tf line 5, in resource "packet_project" "kubenet":
   5: resource "packet_project" "kubenet" {

Is there maybe a step missing in the README? I've tried setting the name to my project name, and even applied @enkelprifti98 PR.

The terraform templates will attempt to create a new project, no matter what kind of name you will put there. The name will be used for the created project. Project name doesn't have to be unique, so even if you put there a name of an existing project, it should create a new one (with the same name, so probably not a good idea).
The TF code in this repo doesn't attempt to reuse project, unless you modify it like you did.
I think it's still not clear why you had "Not Found" returned by the API. It could have happened if you ran terraform apply (creating the new project), and then manually removed the project, and then ran terraform apply again. Because terraform is storing the ID of the new project in local file, and always uses the ID for fetching the (any) resource from the API, never a name.

I think in the end the issue wasn't that I modified it or that I did any manual actions, but that I used a project API key instead of a personal API key, which makes sense, but isn't something that's obvious to someone new to the platform.
Really appreciate the quick response and guidance :) Happy to close this.


Added Spanish

Added Spanish support. I was fun to discover some intrincate language rules on the way.

 You should sign our Contributor License Agreement in order to get your pull request merged.

Thank you for your interest in contributing to Numsense! It builds and runs all tests without warnings on my machine, so from a technical perspective I think we're good to go :+1:
As I don't read Spanish, I'd like someone who does to review that part of it, if at all possible. I don't expect any errors, but it's always good with a second pair of eyes :smile:

I solicited a review on Twitter: https://twitter.com/ploeh/status/692036372140523521
Please retweet and spread the word :smile:

I see other PRs that always add hyphens between each particle even if that's not correct in their languages (i.e. in Spanish they are never used), what's the point on that?

I have the same question, is there a reason not to switch to space delimiters for the generation? Parsing can still handle both space and hyphen.

We had a similar discussion about the German implementation. Essentially, if at all 'legal' in the language, it'd be useful for any consumer of the Numsense API to have a way to further manipulate the generated string, if necessary.
Leaving in some delimiter is a low-tech way of enabling that.
As an example, given the string "forty-two", a client can always remove the hyphen if it prefers "fortytwo". It also has the option to convert the numeral to "FortyTwo", or do all sorts of weird and unpredictable things. On the other hand, if we gave the client the string "fortytwo", there would be no easy way to generate "forty-two" from that string.
The hyphen was chosen for Danish because it's an optional, but correct, way to spell Danish numerals. As far as I can tell, the same is true for English; case in point, Nineteen Eighty - Four (although a bit less consistently applied here).
If Spanish doesn't allow the use of a hyphen, then so be it. If there's another delimiter we can use, it'd still be preferable, so that we don't leave clients without options.
If it's absolutely never OK to spell Spanish numerals with delimiters, then perhaps we should consider also exposing an alternative function that returns the numeral as a list of small chunks, instead of as an opaque string.
Now that I think about it, perhaps we should do that for all the languages...

Oh, I see.
In Spanish is not correct to use a hyphen but can be done if it's for technical reasons. On the string to number conversion it's not a problem to replace all spaces by hyphens to be consistent with other implementations.
But for number to string I see that if I use hyphens instead of spaces, the output is not grammatically correct. Replacing them by spaces by the consumer can do but seems weird to me, as he will need to know what is correct Spanish.
And there are no alternative ways to write the numbers, every non single word is separated by a space.
On the other hand, I'm not sure on what to do with diacritics and accents. Should they be removed when parsing the strings? Strictly speaking it's not correct language but can slightly broaden the scope of inputs.
One more thing is gender. My PR only deals with masculine cardinals but they are a bit different when used with feminine nouns: "veintiún coches" vs "veintiuna palabras" (twenty-one cars vs twenty-one words). This might be an enhancement for the future because other languages may change too.
And finally, just say that I'm almost sure that this parser is valid for every Spanish variant as numbers don't change.

And there are no alternative ways to write the numbers

OK. I anticipated that this would happen for some language, sooner or later.
How about adding a function called something like toSpanishElements? I'm open to suggestions regarding the name, but the type would be int -> string list. The implementation of toSpanish would essentially be a call to toSpanishElements.
This design could be back-ported to the other languages (but not in this pull request, and not necessarily by you).
Does that sound like a way forward?

On the other hand, I'm not sure on what to do with diacritics and accents. Should they be removed when parsing the strings? Strictly speaking it's not correct language but can slightly broaden the scope of inputs.

Numsense follows Postel's law, so a parsing function can be a Tolerant Reader and accept incorrect input, as long as it's unambiguous. If the current pull request doesn't already do this, though, I think this could be a topic for a future request.

My PR only deals with masculine cardinals but they are a bit different when used with feminine nouns: "veintiún coches" vs "veintiuna palabras" (twenty-one cars vs twenty-one words). This might be an enhancement for the future because other languages may change too.

I'm fine with adding this in the future :+1:

Does that sound like a way forward?

Seems good to have a function to get elements for machine use and another for human grammar perfect readable strings.
Then I have one more doubt -sorry-. In Spanish you have tres mil which is three thousand and trescientos which is three hundred. So, -cientos is actually hundreds but can't be broken in two words. Do you think this would be two different elements or just one? From the language perspective is a single word.

If the current pull request doesn't already do this, though, I think this could be a topic for a future request.

It does not and I'll leave the diacritics thing for an improvement.

From the language perspective is a single word.

If you say it's a single word, then it's a single word :smile:

Fixed conflicts with master

Sorry, but @SabotageAndi beat you by twenty minutes, so I've now pulled #35, rendering this pull request in conflict yet again.
I'm beginning to realise that I've organised the code in this repository in such a way that it generates conflicts because all new languages have to touch the same files. That's my mistake - sorry about that :flushed:
Could you, though, address the conflicts?

Done, this merge was easier as the new languages did not conflict.

Thank you for your contribution! It's now live as Numsense 0.11.0.


Update wrong doc in authentication.rst

asUser() must be called after create()  (only create() returns the Firebase Object)

Hey @innaj, are you sure you are on the latest (4.x) release of the library? The factory has a asUser() method, the Firebase object hasn't.
Factory: https://github.com/kreait/firebase-php/blob/master/src/Firebase/Factory.php#L86-L93
Firebase: https://github.com/kreait/firebase-php/blob/master/src/Firebase.php

Uh, I was on the 3.9.x release, didn't know there is a 4.x branch...

The differences between 3.x and 4.x are not too big (I think/hope), and you can find the documentation for authenticating with limited privileges at http://firebase-php.readthedocs.io/en/latest/authentication.html#authenticate-with-limited-privileges - and thanks for the PR anyways - I saw this was your first one and I appreciate it!


Update rules

It'd be worth updating the rules with the latest patch in the WP core css lint discussion:
https://core.trac.wordpress.org/attachment/ticket/29792/29792.3.diff
Can submit PR if interested.

Thanks, that patch is in fact the last patch that I uploaded to that ticket, the rules as they stand in this repo are more up to date and current than that patch, I'll update the patch in that ticket and refresh the patch soon.


Checks has_many, has_and_belongs_to_many wrongly

First of all thank you for the amazing tool.
I have a model like;
class Listing < ApplicationRecord
  has_many :listing_items
  has_many :locations
end

and also I have a model,
class FinanceInfo < ApplicationRecord
  has_and_belongs_to_many :payment_methods
end

When I check it shows;
fail Listing listing_items model should have proper foreign key in the database
fail Listing locations model should have proper foreign key in the database
fail FinanceInfo payment_methods model should have proper foreign key in the database

In my case ListingItem and Location models have FKs for Listing and join table for PaymentMethod also has a FK for FinanceInfo.
I believe this checks should be working only belongs_to relationships but it shows for has_many and has_and_belongs_to_many relationships also.
Thank you.

Hey, thank you for your example. I've found the problem and you're precisely right. I'm working on fix now.

Hi, the fix was just released: 0.7.8. Could you please try it out and say if it helps?
Thank you for participation to make the gem better! Very appreciated!

Hi. I can confirm that, message disappeared now.
Thank you for the great tool and amazing effort.

Great, thank you!
P.S. If you have any ideas/requests what else we can potentially check, I'd be happy to implement.
Have a great day 👍


Resolves Issue #56

fixes #56
This fixes the issues within the contributing documentation, to specify that new pull requests should be made against a feature branch, not against master. (Although I am making this PR against master because there is nothing to review for a PR app, if this should be different let me know and I will make the necessary changes)

Thanks for your work on this! Hope to work with you more!


What you are claiming in the Blog is not seems to be true

SynapseML version
Version: 0.11.0
System information
10.4 LTS ML (includes Apache Spark 3.2.1, Scala 2.12)
com.microsoft.azure:synapseml_2.12:0.10.1
pyspark in databricks
Describe the problem
https://microsoft.github.io/SynapseML/docs/features/responsible_ai/Interpretability%20-%20PDP%20and%20ICE%20explainer/#visualization
This is the above page in which you are claiming that "The goal of this notebook is to show how these methods work for a pretrained model."
But in the following code you are fitting the model....which will train it....
`pipeline = Pipeline(
stages=[
StringIndexer()
.setInputCol("income")
.setOutputCol("label")
.setStringOrderType("alphabetAsc"),
StringIndexer()
.setInputCols(categorical_features)
.setOutputCols(string_indexer_outputs),
OneHotEncoder()
.setInputCols(string_indexer_outputs)
.setOutputCols(one_hot_encoder_outputs),
VectorAssembler(
inputCols=one_hot_encoder_outputs + numeric_features, outputCol="features"
),
GBTClassifier(weightCol="fnlwgt", maxDepth=7, maxIter=100),
]
)
model = pipeline.fit(df)`
How can we use the whole code without training it or fitting it....I have already pretrained model and i don't want it to further train....
Code to reproduce issue
model_object = RandomForestClassificationModel.load(model_path)
pipeline  = Pipeline(stages = [VectorAssembler(inputCols=columns_input, outputCol="features"),model_object])
#if used then will throw error 'Pipeline' object has no attribute 'transform'
pipeline.transform(features_df)
pdp = ICETransformer(
model=pipeline,
targetCol="probability",
kind="average",
targetClasses=[1],
categoricalFeatures = ['football_played'],
numericFeatures=['pd2_n_win'],
)
will throw error - cannot pickle '_thread.RLock' object
output_pdp = pdp.transform(features_df)
display(output_pdp)
Other info / logs
No response
What component(s) does this bug affect?

[ ] area/cognitive: Cognitive project
[X] area/core: Core project
[ ] area/deep-learning: DeepLearning project
[ ] area/lightgbm: Lightgbm project
[ ] area/opencv: Opencv project
[ ] area/vw: VW project
[X] area/website: Website
[ ] area/build: Project build system
[X] area/notebooks: Samples under notebooks folder
[ ] area/docker: Docker usage
[X] area/models: models related issue

What language(s) does this bug affect?

[ ] language/scala: Scala source code
[X] language/python: Pyspark APIs
[ ] language/r: R APIs
[ ] language/csharp: .NET APIs
[ ] language/new: Proposals for new client languages

What integration(s) does this bug affect?

[ ] integrations/synapse: Azure Synapse integrations
[ ] integrations/azureml: Azure ML integrations
[X] integrations/databricks: Databricks integrations

@svotaw

@akshat-suwalka , to interpret a trained model, you can simply load the model with PipelineModel.load(path) (assuming it's a Spark model), and then pass the loaded model to the ICETransformer class. You don't have to train your model in the same notebook. The notebook included training steps so it's easier to demonstrate a typical scenario.

Hi @memoryz thank you for the reply..
I tried that but it is showing the below error....Ideally it shouldn't be because it is spark model....
requirement failed: Error loading metadata: Expected class name org.apache.spark.ml.PipelineModel but found class name org.apache.spark.ml.classification.RandomForestClassificationModel

Hi @memoryz thank you for the reply.. I tried that but it is showing the below error....Ideally it shouldn't be because it is spark model....
When i tried to load the model... model_object = PipelineModel.load(model_path) below is the error requirement failed: Error loading metadata: Expected class name org.apache.spark.ml.PipelineModel but found class name org.apache.spark.ml.classification.RandomForestClassificationModel

Sorry for the confusion. What I meant in the previous reply is that you can directly pass the model_object (from RandomForestClassificationModel.load(model_path)) to the explainer:
model_object = RandomForestClassificationModel.load(model_path)

pdp = ICETransformer(
    model=model_object,
    targetCol="probability",
    kind="average",
    targetClasses=[1],
    categoricalFeatures = ['football_played'],
    numericFeatures=['pd2_n_win'],
)

Your model is a RandomForestClassificationModel, not a PipelineModel, so if you try to load the model path as a PipelineModel, you would get exactly this error: Expected class name org.apache.spark.ml.PipelineModel but found class name org.apache.spark.ml.classification.RandomForestClassificationModel.
That said, you should not use the explainer in this way, and here is why:
The RandomForestClassificationModel expects feature vectors (which are commonly indexed/encoded by string indexer and onehot encoder), so the explainer can only perturb these vector features and treat them numerically. So the resulting interpretation will also be based on indexed/encoded features, which are not easy to comprehend. Furthermore, OneHot encoder outputs a binary vector where only 1 component is active at a time, but the explainer has no knowledge of that, and does not assume this rule, and it's going to randomly sample from the perturbation space and will get invalid samples (e.g. more than 1 component is simultaneously active).
The recommended way to explain your model is: In your training pipeline, package your featurizers (indexer, encoder, etc.) together with the classifier into a pipeline, fit the pipeline, and save the entire pipeline model. When you interpret the model, you load the entire pipeline model (PipelineModel.load("path_to_pipeline_model")), and explain it as a blackbox model.


Change lint to use lint_cmap_reqs for cmap data, and incorporate phase.

The version of _get_script_required in lint_cmap_reqs was updated to use
the phased versions of extra script characters that were added to noto_data.
An api was added to cache and get the required chars based on a NotoFont
instance and the noto phase.  Api was added to noto_data to return sets
of required/disallowed characters based on script and phase.  Noto_lint
was then updated to call lint_cmap_reqs to get the characters required
for a font.
To break a circular import, a utility function to return the 'report name'
of a script was moved from noto_lint to noto_fonts.

LGTM


Add automated release process

Includes:

Uploading releases to cloudsmith
Moving to our standard GH actions driven CI workflow
Removing COPR and Debian packaging for releases
Bintray support
TravisCI usage
Add pony-stable Docker images

Closes #124
Closes #122

CircleCI failure can be ignored. We are testing with it but as long as anyone is following this project on CircleCI that "lack of a circleci config" registers as a build error because... ¯_(ツ)_/¯


BBC Radio clip download fails

$ youtube-dl --verbose http://www.bbc.co.uk/programmes/p03b17yy
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'--verbose', u'http://www.bbc.co.uk/programmes/p03b17yy']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2015.11.24
[debug] Python version 2.7.5 - Darwin-13.4.0-x86_64-i386-64bit
[debug] exe versions: avconv present, avprobe present, ffmpeg N-56145-gb2517b0, ffprobe N-56145-gb2517b0, rtmpdump 2.4
[debug] Proxy map: {}
[bbc.co.uk] p03b17yy: Downloading video page
[bbc.co.uk] p03b17z6: Downloading media selection XML
[bbc.co.uk] p03b17z6: Downloading media selection XML
WARNING: unable to extract description; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 162, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 19, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 410, in main
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 400, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1669, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 663, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 290, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/bbc.py", line 486, in _real_extract
UnboundLocalError: local variable 'duration' referenced before assignment

Thanks for the report. This will be fixed in the next version.


tf.cond throws AssertionError when computing its gradient twice

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
Tested on Arch Linux and the default Google Colab env
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
N/A
TensorFlow installed from (source or binary):
Binary
TensorFlow version (use command below):
v2.3.0-0-gb36436b087 2.3.0 (and I've also tried 2.4.0, same problem)
Python version:
3.6.9
Bazel version (if compiling from source):
N/A
GCC/Compiler version (if compiling from source):
N/A
CUDA/cuDNN version:
N/A
GPU model and memory:
N/A

Describe the current behavior
Calling g.gradient twice on a tensor obtained from tf.cond call in @tf.function causes AssertionError:
assert len(func_graph.outputs) == len(grads). The problem appears only if variable in the true_fn or false_fn was transformed (multiplied, exponentiated, etc.)
Describe the expected behavior
TF should either:

Successfully calculate the gradient, or
Consistently fail after the first time and even if the true_fn doesn't contain any transformation of the variable.

Standalone code to reproduce the issue
import tensorflow as tf

a = tf.Variable(tf.ones(10))

@tf.function
def test_cond(cond_var):
    with tf.GradientTape(persistent=True) as g:
         loss = tf.cond(
             cond_var > 0,
             lambda: tf.reduce_sum(1 * a),
             lambda: tf.reduce_sum(1 * a))

    gradient1 = g.gradient(loss, [a])
    gradient2 = g.gradient(loss, [a])
    return gradient1, gradient2

g1, g2 = test_cond(tf.convert_to_tensor(1))

This throws the following AssertionError:
---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-27-7a87d1b88655> in <module>()
     15     return gradient1, gradient2
     16
---> 17 g1, g2 = test_cond(tf.convert_to_tensor(1))

8 frames
/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in __call__(self, *args, **kwds)
    778       else:
    779         compiler = "nonXla"
--> 780         result = self._call(*args, **kwds)
    781
    782       new_tracing_count = self._get_tracing_count()

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in _call(self, *args, **kwds)
    821       # This is the first call of __call__, so we have to initialize.
    822       initializers = []
--> 823       self._initialize(args, kwds, add_initializers_to=initializers)
    824     finally:
    825       # At this point we know that the initialization is complete (or less

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in _initialize(self, args, kwds, add_initializers_to)
    695     self._concrete_stateful_fn = (
    696         self._stateful_fn._get_concrete_function_internal_garbage_collected(  # pylint: disable=protected-access
--> 697             *args, **kwds))
    698
    699     def invalid_creator_scope(*unused_args, **unused_kwds):

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py in _get_concrete_function_internal_garbage_collected(self, *args, **kwargs)
   2853       args, kwargs = None, None
   2854     with self._lock:
-> 2855       graph_function, _, _ = self._maybe_define_function(args, kwargs)
   2856     return graph_function
   2857

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py in _maybe_define_function(self, args, kwargs)
   3211
   3212       self._function_cache.missed.add(call_context_key)
-> 3213       graph_function = self._create_graph_function(args, kwargs)
   3214       self._function_cache.primary[cache_key] = graph_function
   3215       return graph_function, args, kwargs

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/function.py in _create_graph_function(self, args, kwargs, override_flat_arg_shapes)
   3073             arg_names=arg_names,
   3074             override_flat_arg_shapes=override_flat_arg_shapes,
-> 3075             capture_by_value=self._capture_by_value),
   3076         self._function_attributes,
   3077         function_spec=self.function_spec,

/usr/local/lib/python3.6/dist-packages/tensorflow/python/framework/func_graph.py in func_graph_from_py_func(name, python_func, args, kwargs, signature, func_graph, autograph, autograph_options, add_control_dependencies, arg_names, op_return_value, collections, capture_by_value, override_flat_arg_shapes)
    984         _, original_func = tf_decorator.unwrap(python_func)
    985
--> 986       func_outputs = python_func(*func_args, **func_kwargs)
    987
    988       # invariant: `func_outputs` contains only Tensors, CompositeTensors,

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in wrapped_fn(*args, **kwds)
    598         # __wrapped__ allows AutoGraph to swap in a converted function. We give
    599         # the function a weak reference to itself to avoid a reference cycle.
--> 600         return weak_wrapped_fn().__wrapped__(*args, **kwds)
    601     weak_wrapped_fn = weakref.ref(wrapped_fn)
    602

/usr/local/lib/python3.6/dist-packages/tensorflow/python/framework/func_graph.py in wrapper(*args, **kwargs)
    971           except Exception as e:  # pylint:disable=broad-except
    972             if hasattr(e, "ag_error_metadata"):
--> 973               raise e.ag_error_metadata.to_exception(e)
    974             else:
    975               raise

AssertionError: in user code:

    <ipython-input-27-7a87d1b88655>:14 test_cond  *
        gradient2 = g.gradient(loss, [a])
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/backprop.py:1073 gradient  **
        unconnected_gradients=unconnected_gradients)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/imperative_grad.py:77 imperative_grad
        compat.as_str(unconnected_gradients.value))
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/backprop.py:162 _gradient_function
        return grad_fn(mock_op, *out_grads)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/cond_v2.py:121 _IfGrad
        true_graph, grads, util.unique_grad_fn_name(true_graph.name))
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/cond_v2.py:384 _create_grad_func
        func_graph=_CondGradFuncGraph(name, func_graph))
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/framework/func_graph.py:986 func_graph_from_py_func
        func_outputs = python_func(*func_args, **func_kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/cond_v2.py:383 <lambda>
        lambda: _grad_fn(func_graph, grads), [], {},
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/cond_v2.py:359 _grad_fn
        assert len(func_graph.outputs) == len(grads)

    AssertionError:

What's interesting, if you replace 1 * a with a inside the tf.cond call, then everything works fine. If you remove one of the g.gradient calls, it also works fine.
I've uploaded the code to colab as well.

Can you try with:
import tensorflow as tf
print(tf.version.GIT_VERSION, tf.version.VERSION)

a = tf.Variable(tf.ones(10), dtype=tf.float32)

@tf.function
def test_cond(cond_var):
    with tf.GradientTape(persistent=True) as g:
        # This doesn't work...
        if cond_var:
            loss = tf.reduce_sum(1. * a)
        else:
            loss = tf.reduce_sum(1. * a)

        # ...but this does
        #  loss = tf.cond(
        #      cond_var > 0,
        #      lambda: tf.reduce_sum(a),
        #      lambda: tf.reduce_sum(a))

    gradient1 = g.gradient(loss, [a])
    gradient2 = g.gradient(loss, [a])
    return gradient1, gradient2

g1,g2 = test_cond(1)
print(g1,g2)

Sure, I've changed the colab example. If you pass a Python boolean then it works well, but if you pass TensorFlow boolean it fails with the same message.

@maciejwolczyk Yes I think that your problem is related to autograph with identity function. If you transform a e.g. (1. + a) and
if you insert a debugging print like:
print("Num of grads %d - Func_graph outputs %d  - Name: %s " % (len(grads),len(func_graph.outputs),name))
for output in func_graph.outputs:
  print("Output: ",output)

before the return on the  _create_grad_func:
https://github.com/tensorflow/tensorflow/blob/55956aced7956ef25876096ffdf6434aab5e05e5/tensorflow/python/ops/cond_v2.py#L380-L382
You will see:
Num of grads 1 - Func_graph outputs 1  - Name: cond_true_19_grad_44
Output:  Tensor("cond/Identity:0", shape=(), dtype=float32)
[<tf.Tensor 'gradient_tape/cond/gradients/cond/Sum_grad/Tile:0' shape=(10,) dtype=float32>, None]
Num of grads 1 - Func_graph outputs 1  - Name: cond_false_20_grad_61
Output:  Tensor("cond/Identity:0", shape=(), dtype=float32)
[None, <tf.Tensor 'gradient_tape/cond/gradients/cond/Sum_grad/Tile:0' shape=(10,) dtype=float32>]
Num of grads 1 - Func_graph outputs 1  - Name: cond_true_19_grad_85
Output:  Tensor("cond/Identity:0", shape=(), dtype=float32)
[<tf.Tensor 'gradient_tape/cond/gradients/cond/Sum_grad/Tile:0' shape=(10,) dtype=float32>, None]
Num of grads 1 - Func_graph outputs 1  - Name: cond_false_20_grad_102
Output:  Tensor("cond/Identity:0", shape=(), dtype=float32)
[None, <tf.Tensor 'gradient_tape/cond/gradients/cond/Sum_grad/Tile:0' shape=(10,) dtype=float32>]

So you have 1 grad and 1 func_graph output (for cond_true and cond_false) that is ok cause  _grad_fn:
https://github.com/tensorflow/tensorflow/blob/55956aced7956ef25876096ffdf6434aab5e05e5/tensorflow/python/ops/cond_v2.py#L360
When you use a single identity e.g. (1.*a)  it will add an additional OptionalFromValue output but gradients are still 1 and so the assert will mismatch:
Num of grads 1 - Func_graph outputs 1  - Name: cond_true_19_grad_44  Output:  Tensor("cond/Identity:0", shape=(), dtype=float32) [<tf.Tensor 'gradient_tape/cond/gradients/cond/mul_grad/Mul_1:0' shape=(10,) dtype=float32>, None] Num of grads 1 - Func_graph outputs 1  - Name: cond_false_20_grad_67  Output:  Tensor("cond/Identity:0", shape=(), dtype=float32) [None, <tf.Tensor 'gradient_tape/cond/gradients/cond/Sum_grad/Tile:0' shape=(10,) dtype=float32>] Num of grads 1 - Func_graph outputs 2  - Name: cond_true_19_rewritten_grad_94  Output:  Tensor("cond/Identity:0", shape=(), dtype=float32) Output:  Tensor("cond/OptionalFromValue:0", shape=(), dtype=variant)

That seems correct, thanks! Still, it is a rather unexpected behaviour. Is there a possible fix? If not, then I think an error message explaining what happened would be nice.

/cc @saxenasaurabh

/cc @sun51

Was able to reproduce the issue with TF v2.3 and TF-nightly. Please find the gist of it here. Thanks!

Control flow does not support persistent tape yet. When taking gradient of a control flow op, we update the forward op with extra outputs which the tape is unaware of and hence there is a mismatch between the number of incoming grads and the number of outputs of the forward op. One workaround for now is to wrap the tf.cond inside a tf.function:
import tensorflow as tf
print(tf.version.GIT_VERSION, tf.version.VERSION)

a = tf.Variable(tf.ones(10), dtype=tf.float32)

@tf.function
def test_cond(cond_var):
    with tf.GradientTape(persistent=True) as g:
        @tf.function
        def f():
            if cond_var:
                loss = tf.reduce_sum(1 * a)
            else:
                loss = tf.reduce_sum(1 * a)
            return loss

        loss = f()
    gradient1 = g.gradient(loss, [a])
    gradient2 = g.gradient(loss, [a])
    return gradient1, gradient2

g1,g2 = test_cond(tf.convert_to_tensor(True))
print(g1,g2)

@saxenasaurabh Thanks.. Do you think that  we can improve the error message?
Cause without internals debugging It Is hard to understand what's happen.

We should throw a better error message for sure. I will also try to think of a fix.

One workaround for now is to wrap the tf.cond inside a tf.function:

Great, thanks, I will use it for now!
I agree that a better error message would be very useful.

@maciejwolczyk
I ran the code shared on tf 2.4 and do not see nay error, please refer to the gist here.


Support new stage RC 2 for 4.9.1 in wazuh-security-dashboards-plugin repository

Description
This issue attempts to support a new stage RC 2 for 4.9.1 in the wazuh-security-dashboards-plugin repository.
Tasks

[x] Ensure changelog is updated for 4.9.1 (if applicable).
[x] Bump revision for branch 4.9.1 on wazuh-security-dashboards-plugin repository.

https://github.com/wazuh/wazuh-security-dashboards-plugin/pull/107

[x] Create tag v4.9.1-rc2 from branch 4.9.1 on wazuh-security-dashboards-plugin repository.
[x] Create and publish a pre-release: https://github.com/wazuh/wazuh-security-dashboards-plugin/releases/tag/v4.9.1-rc2.

LGTM!

LGTM!


Fix SubWorkflow auth issues

This PR fixes the issue with SubWorkflows has incorrect IAM annotations.
Actual:
➜ kubectl describe fly f3eobbhi -n flytefunctionaltests-development
Name:         f3eobbhi
Namespace:    flytefunctionaltests-development
Labels:       execution-id=f3eobbhi
              hour-of-day=18
              termination-status=terminated
              workflow-name=tests-common-workflows-simple-simpleworkflow
Annotations:  aws-batch-role: flytefunctionaltestsbatchworker-development-iad
              iam.amazonaws.com/role: flytefunctionaltestsbatchworker-development-iad

Expected:
➜ kubectl describe fly frbs2cyq -n flytefunctionaltests-development
Name:         frbs2cyq
Namespace:    flytefunctionaltests-development
Labels:       execution-id=frbs2cyq
              hour-of-day=18
              termination-status=terminated
              workflow-name=tests-common-workflows-simple-simpleworkflow
Annotations:  aws-batch-role: flytefunctionaltestsbatchworker-production-iad
              iam.amazonaws.com/role: flytefunctionaltestsbatchworker-production-iad

Tested in staging and confirmed that the workflow has the right annotations:
➜  kubectl describe fly flbal55y -n flytefunctionaltests-development
Name:         flbal55y
Namespace:    flytefunctionaltests-development
Labels:       execution-id=flbal55y
              hour-of-day=23
              termination-status=terminated
              workflow-name=tests-common-workflows-simple-simpleworkflow
Annotations:  aws-batch-role: flytefunctionaltestsbatchworker-production-iad
              iam.amazonaws.com/role: flytefunctionaltestsbatchworker-production-iad

LGTM. @katrogan as well.

have you rebased off master? i think the addPermissions logic has changed somewhat to only accept an auth role

Yes I rebased master before and changed addPermission to take project & domain.

So is the change to use the referenced LP's project and domain to lookup default Auth values? I'm not quite sure what that line of code does...

This is for a Lyft hack for array jobs that run on AWS batch:
https://github.com/flyteorg/flyteadmin/blob/a9bea7c2885df089192c55bbb0c9b9c08bf60622/pkg/workflowengine/impl/propeller_executor.go#L93-L98

Going to merge in Lyft branch to test it out. Let's continue the discussion in an issue or maybe another PR for master


There is no download button and qr code

Peers that are not created through the dashboard do not have a download config button and a qr code.

This is likely due to the lack of a value in the "Private Key" field.
Isn't this intended behavior?

@LeoEricson Yes you're right.
This was due to the peer is not created from the Dashboard so it doesn't have the private key of the peer. Creating the config file/QR code require the private key.


Improve comments for CPUID check

New comments by @henrikhodne from #98

Cherry picked to

[ ] entering_longmode
[ ] set_up_rust
[ ] printing_to_screen
[ ] allocating_frames
[ ] page_tables
[ ] remap_the_kernel


AllowBackup Rule Fails when not defined

Allow back up rule fails while checking the property in AndroidManifest file
<application>
<activity> ... </activity>
</application>

It's good to add a check before accessing attributes of Application tag

fixed in #7


Update meta-analysis.md

🚀 Deployed on https://66aa4682905d7203b465043d--cozy-fox-0defec.netlify.app


feat : add KTailctl

Adds package required in this issue.
https://github.com/ublue-os/bluefin/issues/1547

Don't worry about the semantic check failing it's not required.

i'm guessing this is blocked until the kernel cache thing in stable is fixed?

Yep, we only fixed that today but ran into some version skew from fedora. As soon as it's all green I'll merge this, thanks for your contribution!


Kodi cant create gui

I've installed kodi through terminal, everything seems to installed OK but when I try to run it, it says it could not created GUI
Not sure if it's a bug or a feature request but I'd love to get kodi running. Not for movies but for music and radio. I'm on latest 1.4. I'm not even sure its possible

Sorry, I will not be investing time on getting kodi working on ArkOS.  This distro is focused on gaming.

I would try buy I don't know where to start


Build iOS

@hannesa2 Is this superseded by #205?

I would say: The first job which build properly wins

Hi,
I'm working on a git GUI client for Mac as a hobby project, using libgit2 and a fork of SwiftGit2. My aim is to leverage the Swift Package Manager as much as possible. Because despite what the name implies, SPM also support packages that consist of C, C++ or Objective-C code.
I've written a Package.swift file for libgit2 that makes it compile cleanly on Apple platforms. Perhaps it is of use to you:
https://github.com/libgit2/libgit2/compare/main...mbernson:libgit2:spm
As you probably know, libgit2 needs transport 'backends' for HTTPS and SSH, so that it can communicate with a remote git server.
HTTPS
At first, I compiled OpenSSL from source as an xcframework, and added it as a dependency to the aforementioned Package.swift file. (Gist on how to do that). That works.
Instead, it's also possible to have libgit2 use Apple's networking framework 'SecureTransport', just by defining GIT_SECURE_TRANSPORT=1. That's what I'm using now.
SSH
I've managed to compile libssh2 for Mac ARM64 as an xcframework, but haven't tried it yet. For now, I've defined GIT_SSH_EXEC=1 in my package, so that libgit2 shells out to OpenSSH. I've yet to decide if I'll keep that.

That's all I've got for now - if people want it and my time permits it, I can make a PR to contribute some of these changes from my fork to the upstream SwiftGit2!

@mbernson That sounds really good. A PR would be great to get rid of all the weirdness of the old build system, eventually. If you eventually find the time to look into this, it'd be much appreciated!

@hannesa2 Turns out neither won :)


feature req: allowed worker tasks

lotus-worker info shows what tasks they are allowed to to
if there a way to get that info through the miner?

I'm running 1.2.1 and it's not available, I will have a look after upgrading to 1.3

I just checked, it's not available via APIs :/ sorry

I just checked, it's not available via APIs :/ sorry


Update lucetc to match cranelift upstream changes

Byproduct of testing that changes I made to cranelift look good by our tests as well, most of this is that FuncEnvironment functions are now fallible, data alignment can now be specified, and changes I don't quite follow about how source locations are tracked.

just needs one last format fix

that's what i get for fixing merge conflicts online


Custom Error Handler does not work

Flask==1.1.1
flask-restful==0.3.8
my Resource
`
class _RegisterUserResource(Resource):
    #@swag_from('swagger.yml', methods=['POST'])
    def post(self):
        try:
            request_payload = request.get_json()
            #logger.debug("request {} ".format(request))
            user = User(**request_payload)
            user.save()
            return {'id': str(user.id)}, 201
        except (FieldDoesNotExist, ValidationError):
            raise SchemaValidationError
        except NotUniqueError:
            raise UserAlreadyExistsError
        except Exception as e:
            raise InternalServerError

`
erros.py:
API
 = flask_restful.Api(app, errors=errors)

`from werkzeug.exceptions import HTTPException

class InternalServerError(HTTPException):
    pass

class SchemaValidationError(HTTPException):
    pass

class UserAlreadyExistsError(HTTPException):

    pass

class UpdatingUserError(HTTPException):
    pass

class DeletingUserError(HTTPException):
    pass

class UserDoesNotExistsError(HTTPException):
    pass

class EmailAlreadyExistsError(HTTPException):
    pass

class UnauthorizedError(HTTPException):
    pass

errors = {
    'InternalServerError': {
        'message': 'Something went wrong',
        'status': 500
    },
    'SchemaValidationError': {
        'message': 'Request is missing required fields',
        'status': 400
    },
    'UserAlreadyExistsError': {
        'message': 'User with given name already exists',
        'status_code': 400
    },
    'UpdatingUserError': {
        'message': 'Updating an other user is forbidden',
        'status': 403
    },
    'DeletingUserError': {
        'message': 'Deleting other User is forbidden',
        'status': 403
    },
    'UserDoesNotExistsError': {
        'message': 'User with given id does not  exists',
        'status': 400
    },
    'EmailAlreadyExistsError': {
        'message': 'User with given email address already exists',
        'status': 400
    },
    'UnauthorizedError': {
        'message': 'Invalid username or password',
        'status': 401
    }
}

when i try to register a user i get the following error client side:
`curl -v -X POST --header 'Content-Type: application/json' -d '{"password":"Password20"<EMAIL_ADDRESS>"phone":"016553225644"}' 'http://<IP_ADDRESS>:8888/user/register'                                                               ✔  02:37:25 
Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying <IP_ADDRESS>:8888...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 8888 (#0)
> POST /user/register HTTP/1.1
> Host: <IP_ADDRESS>:8888
> User-Agent: curl/7.65.3
> Accept: */*
> Content-Type: application/json
> Content-Length: 80
>
* upload completely sent off: 80 out of 80 bytes
* Mark bundle as not supporting multiuse
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
< Content-Type: text/html
< Content-Length: 121
< Server: Werkzeug/0.16.0 Python/3.7.6
< Date: Tue, 24 Mar 2020 01:37:30 GMT
<
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>None Unknown Error</title>

Unknown Error

* Closing connection 0`

on the server side:
2020-03-24 02:37:30,486 - werkzeug - Thread-3 - 20 - INFO - <IP_ADDRESS> - - [24/Mar/2020 02:37:30] "POST /user/register HTTP/1.1" 200 -

any idea how to get flask / flask_restfull to use my custom messages??
Thanks

I have a similar problem. By reading the source code, I found that HTTPException is handled before customizing errors.  And it seems that all custom exceptions inherited from the Exception class will not work.


Need to create PAT for scorecard action

You need to follow these steps https://github.com/ossf/scorecard-action#pat-token-creation, otherwise the run will fail, as in https://github.com/ossf/fuzz-introspector/actions
cc @olivekl

Done. The job now finishes successfully!


Ministry Dashboard - TRA

Title of ticket:
Description
Summarize issue
Ministry reporting dashboard for TRA
Same dashboard filters as economy sector and Education with exceptions below:.
For reporting, TRA has requested they can report on the Northern Region, South Coast Region and the Southern Interior Region separately and as part of the stats for the Highways & Regional Services Division.
For reporting, TRA has requested they can report on Corporate Writing Services separately and as part of the stats for the Strategic & Corporate Priorities Division.
Dependencies
Are there any dependencies?
Divisional stages, #3191
DOD

[x] Analyst Received and Performance Dashboard merged, with the following graphs
[x] Average Days by Request States,
[x] Number of Processing Pages by Ministry,
[x] No Records Response by Ministry
and filters
[x] End FYr, End FQtr, By Month, By Week,
[x] Request Type (General, Personal),
[x] Request Status (Active, Overdue, Closed),
[x] Ministry Assigned To (i.e., coordinators)

@nkan-aot, we should discuss how to report down levels (i.e. region level and division level).

Dont close until PROD and there are divisions being pulled - do initial QA tests for performance metrics

@abin-aot, can I confirm that the TRA's requests for reporting have been aggregated as per the ticket?
cc @KyEggleston

@lmullane  , @KyEggleston : As discussed earlier, The exceptions they indicated are already part of their/TRA's divisions and we have 'divisional' filters already.  Any update from that ?

@abin-aot @lmullane: The divisions that show up under the 'Division' filter are correct - nothing to update there.
However, when a TRAN user only selects the Highways & Regional Services Division, the following divisions/regions should also be included in the results:

Northern Region
South Coast Region
Southern Interior Region

This is because, organizationally, these three regions fall under the Highways & Regional Services Division. Therefore, they should automatically be added to the results if a user only selects the Highways & Regional Services Division. Rather than having to click four 'divisions' to filter by, they only need to select one to capture all the regions.

The same goes for the Strategic & Corporate Priorities Division and Corporate Writing Services. If a user only selects the Strategic & Corporate Priorities Division, it should also include the Corporate Writing Services as part of the results. This is because, organizationally, the Corporate Writing Services fall under the Strategic & Corporate Priorities Division.
Therefore, rather than having to select both 'divisions', they only need to select the Strategic & Corporate Priorities Division to capture the results for both.

@KyEggleston : 'Automatic selection' is not supported by REDASH by default . I thought manual multi-select will work for them! - this is how all other filters work . Being said that, I can look into customizing filter specific to TRA, but that comes with an additional effort. cc: @lmullane

Thanks @abin-aot for clarifying.
Thoughts @lmullane @m-prodan?

Increasing estimate to 8 from 5, due to the changes with Divisions/sub divisions and fixing data mismatches

@abin-aot - I just checked the updates.
It looks like the search results are correct now. The same search results are being pulled if a user just selects Highways & Regional Services Division and when a user selects:

Highways & Regional Services Division
Northern Region
South Coast Region
Southern Interior Region

The same goes for Strategic & Corporate Priorities Division and Corporate Writing Services (which is now an option). I believe this can be closed unless there is anything else to resolve that you noticed?


Client: BUG: parameter default values should be optional in the command line

--print-complete-query-result should imply --print-query-size=false.

Several other ideas for improvements:

it should be possible to invoke the client with the rules file as the sole argument; this should stream the chase result to the output (this might require handling -- to denote that all following arguments are named options, which might already be done by picocli)
standard short options for common arguments should be accepted, in particular -v, -vv, -vvv, etc. for log levels, and -o for the output file
--version should print out information about the vlog4j and vlog versions

Yet another thing: the rules file should do standard path expansions, such as '~' for the user's home directory.


Enforcing SSL topic: HTTPS_PORT env var details

Fixes #7659
More to come on remarks about env vars across the repo when I get to the Configuration coverage issue (#7102).
I think we're going to have to go in this direction wherever we mention env vars explicitly because we probably won't be able to rely on prior knowledge when they're mentioned outside of config/hosting. I'll analyze the situation further later this week or early next week. For now, this will fix this one spot.

FYI I'm out at an event most of the week, I'll catch up on these later in the week.

@Tratcher Ok ... try it now.


resolve conversation

Checkmarx One – Scan Summary & Details – 8ecba092-fc4a-4614-a890-7c448a384847
No New Or Fixed Issues Found


enable setting compression level

Codecov Report

Merging #1378 (834cd4d) into main (f0a2b1c) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main    #1378   +/-   ##
=======================================
  Coverage   94.22%   94.23%
=======================================
  Files         235      235
  Lines       42893    42922   +29
=======================================
+ Hits        40418    40449   +31
+ Misses       2475     2473    -2

Impacted Files
Coverage Δ

src/core/index_meta.rs
93.02% <100.00%> (+0.03%)
:arrow_up:

src/indexer/segment_serializer.rs
98.14% <100.00%> (+0.03%)
:arrow_up:

src/indexer/segment_writer.rs
96.37% <100.00%> (+0.03%)
:arrow_up:

src/store/compression_zstd_block.rs
90.47% <100.00%> (+1.00%)
:arrow_up:

src/store/compressors.rs
87.09% <100.00%> (+2.19%)
:arrow_up:

src/store/mod.rs
99.17% <100.00%> (ø)

src/store/writer.rs
99.00% <100.00%> (+0.09%)
:arrow_up:

src/fastfield/reader.rs
89.91% <0.00%> (+0.84%)
:arrow_up:

src/directory/watch_event_router.rs
96.63% <0.00%> (+0.84%)
:arrow_up:

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 f0a2b1c...834cd4d. Read the comment docs.

Why isn't compression part of the compressor?

We have decompress only compressor
    /// Opens a store reader
    pub fn open(store_file: FileSlice) -> io::Result<StoreReader> {
        let (footer, data_and_offset) = DocStoreFooter::extract_footer(store_file)?;

        let (data_file, offset_index_file) = data_and_offset.split(footer.offset as usize);
        let index_data = offset_index_file.read_bytes()?;
        let space_usage = StoreSpaceUsage::new(data_file.len(), offset_index_file.len());
        let skip_index = SkipIndex::open(index_data);
        Ok(StoreReader {
            compressor: footer.compressor,
            data: data_file,
            cache: Arc::new(Mutex::new(LruCache::new(LRU_CACHE_CAPACITY))),
            cache_hits: Default::default(),
            cache_misses: Default::default(),
            skip_index: Arc::new(skip_index),
            space_usage,
        })
    }

If we have parameters that are compressor specific, it seems like an antipattern to have the union of these parameters in a list of options.

We could have zstd_compression_level or similar instead ofdocstore_compression_level, but I think we can use that parameter for multiple compressors. It's usually just a number.

@PSeitz Can you investigate if a refactoring to make that nicer?
So the compressor enum would contain these params.
It then needs to be serialized/deserialized in the meta.json, as well as in the footer.
The footer part is a bit lame, because the level is not necessary, but that's fine.


ServiceAccount for a container component

Which area this feature is related to?
/area api
Which functionality do you think we should add?
Ability to specify the ServiceAccount for container component
Why is this needed? Is your feature request related to a problem?
We are doing Operator development using odo (and hence Devfile). We would like to be able to specify ServiceAccount for the container component to communicate with Kubernetes cluster.
Detailed description:
Same as above.
Describe the solution you'd like
Ability to specify the ServiceAccount for container component
Describe alternatives you've considered
Used kubernetes component with ServiceAccount info. But that doesn't help because we would prefer the main component created using odo dev to have this information baked into it.
Issue on odo repo
https://github.com/redhat-developer/odo/issues/5977

closed as rotten


Battery controll

Working software for battery controller

This needs to be re-based before merge.
Do
git fetch
git rebase origin/main

and resolve all of the conflicts


is vm._computedWatchers available?

What problem does this feature solve?
Ihave many variate be watched in computed property . And I want to get the all variate from computed property at a time , so I can put this variates into a Array, and I find a vue instance of vm._computedWatchers can get all variate , but I can't find this in vue official website . so I want to make sure this property is available?
What does the proposed API look like?
computed: { quickType() { return this.getSearchValue('quick') }, titleExpre() { return this.getSearchValue('title') } .... more },

Anything starting with _ is pretty much private.
Please, next time consider using the forum, the Discord server or StackOverflow for questions first. But feel free to come back and open an issue if it turns out to be a bug 🙂

ok thank, sorry to bother you


nil entity.get_upgrade_target

How do you make sure get_upgrade_target returns anything? I'm currently trying to get the upgrade target, but the function only returns nil, although the entity in question returns "true" when executing to_be_upgraded().

If it is marked as to be upgraded it will have an upgrade target. Without seeing your code I can't see what is wrong

Hi, thanks for answering so quickly!
My code currently isn't on Github. It's the mod "BotPrioritizer".
I just asked my question here, because I thought you or another contributor might have faced the same issue recently, because I saw that you implemented proper upgrade handling a few days ago.
I have been debugging now for hours and I can say, that this pesky "get_upgrade_target()" function just isn't reliable.
I don't know why, but while debugging and also while running (just) my mod without instrument mode I don't get the upgrade target... only nil.
My workaround now is to keep a global table of entities that are marked for upgrades and their targets, using the events on_marked_for_upgrade, on_cancelled_upgrade and a cleanup routine to throw out stale or invalid entries.
This enables me to handle upgrades much faster than with the slow and unreliable get_upgrade_target function.
Maybe I'll look into this again, because although it even says in the docs that the function is rather slow it should work nonetheless.
By the way, ~one of the Wube devs~ Optera suggested using the events in a mod forum a while ago. (I misremembered. It was Optera, here: https://mods.factorio.com/mod/GhostScanner/discussion/5d4e4346bf0746000dcd3c55 )
Chris

Should never be nil if it's to be upgraded

I know, it shouldn't. But it was for me. Maybe my debugger messes things up, idk.

@Nexela I just wanted to let you know, that the get_upgrade_target function still returns nil even though the entities are scheduled for an upgrade and to_be_upgraded returns true.
I have a workaround, which I'll combine with your valuable input. I'm going to ask in the Factorio forums. maybe a Wube dev has some insight.
Chris

Send me a copy of the map where this happens and I can debug it
…
On Sat, Oct 10, 2020, 7:32 AM ChrislyBear @.***> wrote: @Nexela https://github.com/Nexela I just wanted to let you know, that the get_upgrade_target function still returns nil even though the entities are scheduled for an upgrade and to_be_upgraded returns true. I have a workaround, which I'll combine with your valuable input. I'm going to ask in the Factorio forums. maybe a Wube dev has some insight. Chris — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <44ebabd#commitcomment-43129643>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKTFYB3Q7G5JMEBC47I32DSKBA3PANCNFSM4SH4AZDQ .

Wow, thanks man! I really appreciate your help! Here's a link to the savegame I'm using to debug my mod: https://we.tl/t-Tbo8q0NSsU

Moving this conversation over to your mod.
What I THINK is happening is the moment a bot is dispatched it clears the upgrade_target.  I will load up the source in debugger next to confirm though.

Ah! This makes sense! Because sometimes (very seldomly) it did return a value. Maybe my test setup unintentionally eliminated the "regular" case and I only saw the edge case I'm dealing with. Gotta go testing as well :)

https://forums.factorio.com/viewtopic.php?f=7&t=90252

https://forums.factorio.com/viewtopic.php?f=7&t=90252

Good thinking! This definitely feels like a bug. I'll leave this open until it has been fixed or the devs have responded.


Error when loading JSON network definition with c++ api

For bugs or installation issues, please provide the following information.
The more information you provide, the more likely people will be able to help you.
Environment info
Operating System: Windows 10
Compiler:VS2015
Package used (Python/R/Scala/Julia):
MXNet version: 9.0.5
Or if installed from source:
MXNet commit hash (git rev-parse HEAD):
If you are using python package, please provide
Python version and distribution:
If you are using R package, please provide
R sessionInfo():
Error Message:
Console output:
[12:39:43] C:\Projects\MXNet\Base\dmlc-core\include\dmlc/logging.h:300: [12:39:43] C:\Projects\MXNet\Base\nnvm\src\core\op.cc:55: Check failed: op != nullptr Operator Convolution is not registered
[12:39:43] c:\projects\mxnet\base\dmlc-core\include\dmlc\logging.h:300: [12:39:43] c:\projects\mxnet\base\cpp-package\include\mxnet-cpp\symbol.hpp:79: Check failed: MXSymbolCreateFromFile(file_name.c_str(), &(handle)) == 0 (-1 vs. 0)
Minimum reproducible example
if you are using your own code, please provide a short script that reproduces the error.
Symbol m_symNetwork = Symbol::Load("C:\DataSets\alex.json");
Steps to reproduce
or if you are running standard examples, please provide the commands you have run that lead to the error.

What have you tried to solve it?

Tried to save a network created in code. Then saved to JSON. The JSON output file seems OK. ->But errors is the same.
Tried to load one of the sample files from internet (Inception-BN-symbol.json. ->Same error

same problem.

@nswamy please add Bug, C++ to this topic

@Bumblebee1964 Can you please try with the latest MXNet version and if the issue persists, can you. please provide a minimum reproducible example?
I have recently submitted a PR #12930 demonstrating how to load model in JSON format.

@mxnet-label-bot add [Pending Requester Info]

Hi @Bumblebee1964 there appears to be no update on your end on this issue
I am requesting to close it at the moment, please feel free to open it if the problem persists.
@mxnet-label-bot add [suggest-closed]

@mxnet-label-bot add [suggest-closed]

Dear Kalyanee,
Thanks for addressing.
Currently we use the Python interface.
We will revert to the C++ api in December using the latest MxNet version. If we still encounter the same problem, we will open the issue.
Regards,
Fred
From: Kalyanee Chendke<EMAIL_ADDRESS>Sent: Thursday, 15 November 2018 21:55
To: apache/incubator-mxnet<EMAIL_ADDRESS>Cc: Fred Hugen<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [apache/incubator-mxnet] Error when loading JSON network definition with c++ api (#7771)
Hi @Bumblebee1964https://github.com/Bumblebee1964 there appears to be no update on your end on this issue
I am requesting to close it at the moment, please feel free to open it if the problem persists.
@mxnet-label-bothttps://github.com/mxnet-label-bot add [suggest-closed]
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/apache/incubator-mxnet/issues/7771#issuecomment-439186345, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AYu6QbpEcQh0P4-IsdsSE632zC9J9vy1ks5uvdSXgaJpZM4POMjZ.

Thanks for the update @Bumblebee1964
Could you please close this issue at the moment then?


Error when trying to mint ERC721 contract

Steps to reproduce

Go to …
Click on …
Scroll down to …
See error

Expected behavior
A clear and concise description of what you expected to happen.
Error
AbiEventSignatureNotFoundError: Encoded event signature "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef" not found on ABI.
Make sure you are using the correct ABI and that the event exists on it.
You can look up the signature here: https://openchain.xyz/signatures?query=0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Docs: https://viem.sh/docs/contract/decodeEventLog.html
Version<EMAIL_ADDRESS>    at Np (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:22247:11)
    at http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:23290:386
    at Array.map (<anonymous>)
    at OS (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:23290:375)
    at fd (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:13691:16)
    at KO (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:14963:43)
    at B2 (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:15609:18)
    at CT (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:17857:18)
    at _I (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:17604:42)
    at mee (http://localhost:3000/node_modules/.vite/deps/@latticexyz_dev-tools.js?v=c5bd970e:17572:9)

What version of mud are you using? This should be fixed with #933. Can you try pnpm mud:up from your project root dir to upgrade to the latest mud and let us know if this is still an issue?


Smhe 329 update of set of devicemodels and manufacturer codes

Kaifa, manufacturer of devices, gets another ManufacturerCode code. This is just testdata, no changes to the sourcecode

Nigthly successful: https://ci.opensmartgridplatform.org/view/Nightly/job/OSGP_open-smart-grid-platform_nightly/1561/


⚠ Typo in Markdown plugins sample code

There's a typo on https://docs.astro.build/en/guides/markdown-content/#markdown-plugins that would result in broken emojis.
Incorrect:
export default defineConfig({
  markdown: {
    // Applied to .md and .mdx files
    remarkPlugins: [remarkToc, rehypeAccessibleEmojis],
  },
});

Correct:
export default defineConfig({
  markdown: {
    // Applied to .md and .mdx files
    rehypePlugins: [rehypeAccessibleEmojis],
    remarkPlugins: [remarkToc],
  },
});

You're right @thdoan! Would you like to open a PR applying this change? You can click "Edit this page" in the docs to make a PR fast, let me know if not, I'd be happy to do it for you.


woof today available under CC-BY?

Hi Allison - I hope you are well!  I love all of your incredible artwork so much, and I lean on it heavily to help make my blog friendly and fun. Is the woof today illustration available under the CC-BY license? I would love to use it in an upcoming blog post. Apologies if it is in the README and I didn't see it!

Hi Shannon - Oh yep that one is definitely also available by CC-BY, feel free to use it in your post! I must have forgotten to add it here, thanks for the heads up :)

Super, thank you!


[FLINK-22812][hive] Fix HiveConf, HiveMetaStoreClient and upgrade avr…

…o for hive 3.1.2

What is the purpose of the change
Fix some hive issues in flink-sql-connector-hive-3.1.2
Brief change log

Fix HiveConf initialization bug
Port HIVE-21508
Upgrade avro version in the uber jar
Suppress checkstyle for the copied class

Verifying this change
Use the updated uber jar to run some simple SQLs against hive-3.1.2, including read/write avro tables.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): yes
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? NA

The copied code is formatted by spotless. Perhaps I should disable spotless for this module, so that we can easily compare the diff between copied and original hive files?

@lirui-apache Yes, having two commits would be better to review. I think we are also disable spotless for Calcite copied classes.

@twalthr I have split the commits and disabled spotless

@LadyForest I think you also maintain some changes in a private hive fork. Let me know if you want to incorporate anything else in this PR.

@LadyForest, I think you also maintain some changes in a private hive fork. Let me know if you want to incorporate anything else in this PR.

I'm just wondering do we need to port HIVE-23700 as well? In our inner branch, we have both HIVE-21508 & HIVE-23700 patched.

@LadyForest, I think you also maintain some changes in a private hive fork. Let me know if you want to incorporate anything else in this PR.

I'm just wondering do we need to port HIVE-23700 as well? In our inner branch, we have both HIVE-21508 & HIVE-23700 patched.

I think the changes made to HiveConf already cover the issue of HIVE-23700, i.e. we're not using the jarUri to construct the File instance so that we won't get an IllegalArgumentException.

The pull request also looks good to me. I can help to address @twalthr 's comment and merge it if @lirui-apache doesn't have time.

Thanks @wuchong for taking care of this :)


fix(assign-pr-reviewers): remove author from core members

:pencil: Description

To avoid assigning the author as a core approver

:link: Related Issues

:tada: This PR is included in version 1.25.4 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


added login route

Date: 10/12/24
Developer Name: Sameer Supe

Issue Ticket Number:-

closes #946

Description:
adds a new login route with new added auth option for google login.
refer design doc & PRD for more details.
note:
this feature is dependent on backend pr.
Is Under Feature Flag

[x] Yes
[ ] No

Database changes

[ ] Yes
[x] No

Breaking changes (If your feature is breaking/missing something please mention pending tickets)

[ ] Yes
[x] No

Is Development Tested?

[x] Yes
[ ] No

Tested in staging?

[ ] Yes
[x] No

Add relevant Screenshot below ( e.g test coverage etc. )

Screenshot
https://github.com/user-attachments/assets/496592d1-a2ca-40b0-8b4d-8362eb6cddac

Test Coverage

Screenshot

Please break the PR so it is easy to review

Please break the PR so it is easy to review

@vinit717 most of the changes there are around templating/css and some js for component/routing logic,
even if we separate that from testing it would still be fairly big @ ~220 changes or so...
is that fine?