Update to 19.03.14

Arg, @anonymouse64 looks like we need some new AppArmor adjustments for the containerd CVE mitigation... :disappointed:
docker: Error response from daemon: /run/containerd/s/e15c35ef67476c11609c7576eee3549e767321cf8f56507989f5fe9ab1455439: mkdir /run/containerd/s: permission denied: unknown.

(That /run/containerd/s prefix is explicitly hard-coded intentionally to avoid unix socket path length issues and potential security issues with it being mutable.)

fun... I will file a PR to snapd then

@tianon do you have a specific CVE I can reference in the commit message?

Yes!  That'd be CVE-2020-15257, documented in https://github.com/containerd/containerd/security/advisories/GHSA-36xw-fx78-c5r4.

PR is at https://github.com/snapcore/snapd/pull/9764, after a little bit there will be a snapd snap you can download and install locally to test with this new version of the docker snap, could you validate that it fixes the issue?

Yeah, absolutely - I should be able to hack it into the pipeline here to ensure it works in GitHub's pristine environment (my local environment doesn't seem to catch these issues reliably, which is part of why I set up GitHub Actions in the first place :smile:).

BTW, it would be really cool if there was an equivalent github action here which built the snap from a PR and made it available for download so you can easily test a PR locally if you wanted :wink: it's as simple as something like this: https://github.com/canonical/etrace/blob/master/.github/workflows/snap.yml

BTW, it would be really cool if there was an equivalent github action here which built the snap from a PR and made it available for download so you can easily test a PR locally if you wanted  it's as simple as something like this: https://github.com/canonical/etrace/blob/master/.github/workflows/snap.yml

Great idea - gonna rebase this on top of #14 once the current build test is finished. :+1:

(moving back here to keep that snapd issue less noisy :sweat_smile:)
So, in the context of https://github.com/snapcore/snapd/pull/9764#issuecomment-741228832, if we put something like assumes: [snapd2.48.2] in our file, does the store make sure we can't promote until that dependency is promoted, or is that something we have to monitor ourselves?

Yes but unfortunately there is already a snapd 2.48 that does not have the fix, we can only do assumes for major versions not for patch versions like 2.48.2, so definitely using 2.48 in the assumes is better than not doing that but it's not 100% perfect unfortunately

Hmm, what triggers snapd to be refreshed from https://snapcraft.io/ after it's installed via APT?
(It seems snap refresh in my GitHub Actions didn't do it, so I'm not sure what would trigger that to occur and how common the situation I've currently got in this action is going to be for actual users?  It seems APT gave me 2.48, which is new enough to satisfy my new assumes: but not new enough to actually satisfy the real dependency even though 2.48.2 does appear to be in the stable channel on snapcraft.io. :disappointed: :confused:)

Hmm, what triggers snapd to be refreshed from https://snapcraft.io/ after it's installed via APT?
(It seems snap refresh in my GitHub Actions didn't do it, so I'm not sure what would trigger that to occur and how common the situation I've currently got in this action is going to be for actual users?  It seems APT gave me 2.48, which is new enough to satisfy my new assumes: but not new enough to actually satisfy the real dependency even though 2.48.2 does appear to be in the stable channel on snapcraft.io. :disappointed: :confused:)

Well, the apt version is 2.48.2+20.04, and the snapd version is 2.48.2, so the apt version "wins" since "+20.04" is higher than "".
I'd recommend always installing the snapd snap to be sure you have the most up to date snapd.

Well, the apt version is 2.48.2+20.04, and the snapd version is 2.48.2, so the apt version "wins" since "+20.04" is higher than "".
I'd recommend always installing the snapd snap to be sure you have the most up to date snapd.

Well, this is on Xenial, so I think doesn't even have 2.48.2 (yet?).
How common do you think this is going to be for users?  In other words, how many users are likely to get broken if we move forward with this? :grimacing: :innocent:

Well, this is on Xenial, so I think doesn't even have 2.48.2 (yet?).
How common do you think this is going to be for users?  In other words, how many users are likely to get broken if we move forward with this? :grimacing: :innocent:

(I suppose the follow-up question is then whether we need to wait for 2.49+ so we can have a proper dependency relationship?)

(I suppose the follow-up question is then whether we need to wait for 2.49+ so we can have a proper dependency relationship?)

Well actually, as much as it saddens me to say this apparently we didn't
end up cherry-picking the associated snapd PR to release/2.48 branch
anyways so we need to either wait for a 2.48.3 (which may or may not
happen), or we need to wait for 2.49. How important is it that this docker
update is pushed through soon?
On Wed, Jan 6, 2021 at 5:34 PM Tianon Gravi<EMAIL_ADDRESS>wrote:

(I suppose the follow-up question is then whether we need to wait for
2.49+ so we can have a proper dependency relationship?)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/docker-snap/docker-snap/pull/13#issuecomment-755779015,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABN2OLLPMKLU2UL4RFTLDJTSYTXPNANCNFSM4URB5PQQ
.

Well actually, as much as it saddens me to say this apparently we didn't
end up cherry-picking the associated snapd PR to release/2.48 branch
anyways so we need to either wait for a 2.48.3 (which may or may not
happen), or we need to wait for 2.49. How important is it that this docker
update is pushed through soon?
On Wed, Jan 6, 2021 at 5:34 PM Tianon Gravi<EMAIL_ADDRESS>wrote:

(I suppose the follow-up question is then whether we need to wait for
2.49+ so we can have a proper dependency relationship?)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/docker-snap/docker-snap/pull/13#issuecomment-755779015,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABN2OLLPMKLU2UL4RFTLDJTSYTXPNANCNFSM4URB5PQQ
.

Well, this includes the mitigation for CVE-2020-15257 (https://github.com/containerd/containerd/security/advisories/GHSA-36xw-fx78-c5r4), which seems especially relevant for Snaps - they typically run with the host network namespace, right?

Well, this includes the mitigation for CVE-2020-15257 (https://github.com/containerd/containerd/security/advisories/GHSA-36xw-fx78-c5r4), which seems especially relevant for Snaps - they typically run with the host network namespace, right?

Yes snaps run in the same network namespace as the host. I guess I leave it up to you how critical it is to fix this bug soon.

Yes snaps run in the same network namespace as the host. I guess I leave it up to you how critical it is to fix this bug soon.


Conventional Versioning

Makes more sense to include version in gemspec in the conventional method.

There are a few other places that depend on the VERSION file.  If you don't mind, can you find the rest then update the PR?  Thanks a bunch!


[BUG] Code for real-world cvrplib instance inference.

Hello, I can't solve the instances in cvrplib with the trained model.
Traceback (most recent call last):
File "/NCO/RL4CO/examples/test_cvrplib_demo.py", line 91, in
out = policy(td.clone(), decode_type='greedy', return_actions=True)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1553, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1562, in _call_impl
return forward_call(*args, **kwargs)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/models/common/constructive/base.py", line 237, in forward
td = env.step(td)["next"]
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/envs/common/base.py", line 129, in step
td = self._step(td)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/envs/routing/cvrp/env.py", line 89, in _step
visited = td["visited"].scatter(-1, current_node, 1)
RuntimeError: Index tensor must have the same number of dimensions as self tensor

Have you checked out this notebook?
https://github.com/ai4co/rl4co/blob/main/examples/datasets/2-test-on-cvrplib.ipynb
There was some small problem with squeezing dimensions for evaluating with batch size of 1, so we made some monkey patching.
Also, here is an example of a recent project based on RL4CO in which we evaluate CVRPLIB (with some extra utilities):
https://github.com/ai4co/routefinder/blob/main/examples/2.eval-cvrplib.ipynb

Follow the https://github.com/ai4co/rl4co/blob/main/examples/datasets/2-test-on-cvrplib.ipynb, i set batch_size=2. However, I still have this problem. If the current version can be used for CVRPlib instance inference？

I use the same code in https://github.com/ai4co/rl4co/blob/main/examples/2d-meta_train.py for training and the same code in https://github.com/ai4co/rl4co/blob/main/examples/datasets/2-test-on-cvrplib.ipynb for cvrplib instance inference. But the following bug still occur.
Traceback (most recent call last):
File "/NCO/RL4CO/examples/test_cvrplib_demo.py", line 91, in
out = policy(td.clone(), decode_type='greedy', return_actions=True)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1553, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1562, in _call_impl
return forward_call(*args, **kwargs)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/models/common/constructive/base.py", line 237, in forward
td = env.step(td)["next"]
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/envs/common/base.py", line 129, in step
td = self._step(td)
File "/miniconda3/envs/rl4co/lib/python3.9/site-packages/rl4co/envs/routing/cvrp/env.py", line 89, in _step
visited = td["visited"].scatter(-1, current_node, 1)
RuntimeError: Index tensor must have the same number of dimensions as self tensor

Thanks for reporting the bug - you may check the most recent improvements!
Please let us know if now it works well on your end ~

Thanks for the update, it looks like the patch will fix the current bug.


WIP - Lambda DS simplifying state logic

Signed-off-by: Emilio Lahr-Vivaz<EMAIL_ADDRESS>Reduces memory footprint of cache to a hashmap and a priority queue. I ran overnight and it seemed fine.
@jnh5y what do you think?

Looks reasonable to me.  Honestly, some of the fine details are a little hazy to me, but I like the direction things are going.


Can't create composite index on vertex using edge-derived properties

From an empty graph, I set up classes with this SQL:
CREATE CLASS color EXTENDS V
CREATE CLASS sofa EXTENDS V
CREATE CLASS colorof EXTENDS E
CREATE PROPERTY colorof.out LINK color
CREATE PROPERTY colorof.in LINK sofa UNIQUE
CREATE PROPERTY color.name STRING
CREATE PROPERTY sofa.name STRING

I then try to create a composite index, using properties linked to with edges with the "in_" prefix, as described in https://groups.google.com/forum/#!msg/orient-database/uaUvruu-GN8/zYdZ0DPhtD8J:
CREATE INDEX findbycolor ON sofa (in_colorof.name, name) UNIQUE
However, I get the error message:
OIndexException Index with name : 'findbycolor' cannot be created on class : 'sofa' because field: 'in_colorof.name' is absent in class definition.  com.orientechnologies.orient.core.metadata.schema.OClassImpl.createIndex (OClassImpl.java:1706)
Am I writing the SQL command wrong, or is this a bug? Thanks

If you create an index against in_colorof.name, you should declare that property. However the dot (.) syntax is not accepted on linked fields at index creation. Whats's your goal?

My goal is to do fast lookups on vertex of type sofa given both color name and sofa name. Eg. if there are 10,000 vertices of type color, and 100,000 vertices of type sofa for each vertex of type color (10,000 * 100,000 = 1,000,000,000 total vertices of type sofa), then doing a linear scan over either sofa name or color name would be quite slow. (The schema assumption is that, for any given vertex of type sofa, the pair (in_colorof.name, name) is unique, but both in_colorof.name and name by themselves are non-unique and might be shared by tens or hundreds of thousands of

Sorry, that last comment should have ended with "thousands of vertices." Thanks

(Comments above are from me - sorry, my phone was logged in with my old account)

Ok, so if you use Lightweight edges, you could index out/in collections:


/deploy API returns 500 on new website creation and theme edit

When trying to publish new website or save new theme for existant one:

Should be fixed now.


Create MM-Shelf List Report

There is the shelf list cluster. See MM working spreadsheet. UXPROD-2051

I will test this on a live database.

I will test this on a live database.


make a front end for this site

Ideally we'd have something like https://icanhazdadjoke.com/ where there is a front end, and also an API. You know you're making an API call rather than loading the whole page if the client sends the response-type: application/json header.

I'd like to work on the frontend for this site.

I'd like to work on the frontend for this site.


[BEAM-8526] Turn on metrics publishing in load tests on Flink

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

 I've checked that all metrics were published to BQ.

This is great news! 🎉 Thank you @kamilwu for finishing this.
From what I understand - the last steps to have metrics from Python Flink's tests visualized is to simply create the dashboards in PerfkitExplorer, right? Could you do that? Let me know if you need help.

@lgajowy You're right, this is the final step. Thank you for your assistance!


support tabular data

@RLstat I am assuming we are supporting tabular data now, right?

@ethem-kinginthenorth , yes, we are. I've included examples about how to use dlpy for tabular data analysis.

@RLstat thanks. closing the issue


pwm: add set nanosecond period and pulse width function

For improved precision of high speed PWMs, the new
function will allow you to specify period and pulse
at the nanosecond resolution.
Signed-off-by: Nicholas Lowell<EMAIL_ADDRESS>

Codecov Report

Merging #13326 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #13326      +/-   ##
==========================================
- Coverage   48.76%   48.76%   -0.01%
==========================================
  Files         319      319
  Lines       46892    46892
  Branches    10840    10840
==========================================
- Hits        22867    22866       -1
  Misses      19391    19391
- Partials     4634     4635       +1

Impacted Files
Coverage Δ

arch/posix/core/posix_core.c
90.9% <0%> (-1.02%)
:arrow_down:

Continue to review full report at Codecov.

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

No one was automatically added for review.  Requesting @nashif @galak


Fix envoydeployment constant reconcile

Quick fix to solve a constant diff & reconcile in the envoydeployment controller.
/kind bug
/priority important-soon
/assign

/lgtm


config should support arrays of enums, user defined types

e.g. ResourceId[]

just came across this in emojimon where it'd be nice to specify the map terrain as TerrainType[] (where TerrainType is an enum)


Add page type model and type

Add PageType model
Add MANAGE_PAGE_TYPES_AND_ATTRIBUTES permission
Add PageType graphql type
Add pageType query
Update Attribute meta permissions

Related issues: SALEOR-1167, SALEOR-1350

Impact

[x] New migrations
[x] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[x] The changes are tested
[x] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-1167 Add PageType model and type

Task linked: SALEOR-1350 Add models to associate attribute values with page


Revert "Store bin width in FitDiagnostics --overall"

Reverts cms-analysis/HiggsAnalysis-CombinedLimit#666

Needed to fix compilation in 102X


PAPP-8016 Virustotal undetected url return fills widget

Closes PAPP-8016
Removed several contains: [...] statements from json file that were causing Domain Reputation call widget to fill with similar results

Closing as stale since ticket is closed


[TASK]: Add an empty state placeholders to "My projects" and "Shared projects" on the home screen

Currently if the "My projects" and "Shared projects" sections are empty the space reserved for them collapses and the page looks weird.

PROPOSED
We need empty state placeholders for both sections. Here's what I propose:
** MY PROJECTS **

** SHARED PROJECTS **

ASSETS
Here's the dot background that can be tiled:
  <---- It's tiny and subtle, but it's there
Here's the seed SVG for the "My projects screen":

Here's the plants SVG for the "Shared projects screen":

If there are no projects to show, there won't be any "Papers related to your projects". So my recommendation is that we make that bottom section "display: none" instead of showing a broken screen.


Orgbook Test update: Company name change

Company Name:  0879912 B.C. LTD.
Company Incorporation # BC0879912
Hi,
This is another test data update for the MOTI PTM project - can you please update Orgbook test?
Thanks!

Closing as completed (please see screenshot)


Plot item objet API

This PR completes the objet orient plot item API by making add|removeItem the public version of _add and _remove, so one can instanciate and item and add it to the plot.
With sigItemAdded, sigItemAboutToBeRemoved and getItems to me, the API is completed.
Compatibility of add|removeItem is maintained (with a deprecation).
TODO:  handle item legends: init with a unique default legend.

Let's try it

related to #2830


Hangzhi

basic setups for the backend of public feeds page:

datastore changed
new servlet

@Mengyang, I have moved all the scripts to the footer part of the html file. You will find them there :)

@LiMengyang990726 , I have moved all the scripts to the footer part of the html file. You will find them there :)

I believe that this part:
function createNavBar(){
  document.getElementById('nav-bar').innerHTML =
  '\
  Team 35\
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"\
    aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">\
    \
  </button>\

\

\

\
        Home\

\

\
        Our Team \

\

\
        Public Feeds\

\

\
        Statistics\

\

\

\
';
}

is better to be changed to the following:
if (loginStatus.isLoggedIn) {
        navigationElement.appendChild(createListItem(createLink('/user-page.html?user=' + loginStatus.username, 'Your Page')));

        navigationElement.appendChild(createListItem(createLink('/stats.html','Statistics')));

        // more links for public feed etc. can be added here

        navigationElement.appendChild(
          createListItem(createLink('/logout', 'Logout')));
      } else {
        navigationElement.appendChild(
          createListItem(createLink('/login', 'Login')));
      }

As the later one is more efficient and is able to add login credentials.

Sure we can make that change.. i'm trying to include all the nav and button stuff in the js. But definitely can remove the content inside '' and add in your code after calling the createNavBar function

Sure we can make that change.. i'm trying to include all the nav and button stuff in the js. But definitely can remove the content inside ul tag and add in your code after calling the createNavBar function

Sure! That's also a good way of doing that!
I think seperating the links in another function is a good practice, but the current one may not be as good as the original syntax as doing createListItem(createLink)


Wrong relationship filter are not throwing a Validation Error

Environment

Python version: 3.7
Nautobot version: 1.0.0

Steps to Reproduce

Create a relationship from dcim.device to ipam.vlan
Configure the source_filter field as { "role": 98 }
Save the relationship

The same issue exist for destination filter
Expected Behavior
The form should flag the source_filter as invalid as role must be a list of string { "role": [String] }
Observed Behavior
The form is saved without error

Please assign this one to me, I have a fix for it already


Deb package

I've debianized raspi2png (builds fine on Raspbian Jessie), as I use this tool in my project, and I prefer to have everything packaged. Perhaps you could merge it?
Thx.

Thanks. It sounds like a good idea. I don't see a down side, but let me think about it for a little while.

Sure, actually it's probably worth reviewing. I'll use it anyway, as I want easy reproducible deployments badly :)


Let there only be one way to wire query to the grouping hits.

@bratseth PR

Note that the only semantic change here is line 69 in HitConverter.java => hit.setQuery(hitContext.getQuery());
The rest is just wiring of the DocumentDatabase required for the next PR, and unification of how the query is propagated.

Or @bjorncs PR


Support multiple certs and keytabs via config json

@vkuznet I implemented a way to get list of certs and keytabs. It is deployed, working fine except for keytabs. I will provide more explanations in the ticket.

Thanks @vkuznet , I resolved the issues you mentioned.


Minor tweaks to the movie template copy.

Why are these for US only?

can't really use UTC since movie sales occur across multiple timezones. like in the united states. it all depends on how gross sales is calculated by the data aggregator website/organization. I think it's find being vague.


FR: "SWS: Select previous folder" and "SWS: Select next folder" to be a little smarter

Hi,
Currently, these two actions only work when a folder track is selected. Would it be possible to modify them so that if a user is on a standard track when they trigger the actions, they land on the nearest folder in either direction?
Example: let's say I have 12 drum tracks contained within a folder called "Drum bus", followed by two bass tracks which aren't folders, and below those, let's say 6 guitar tracks contained within a folder called "Guitar bus".
Currently, to navigate between those two folders using the SWS actions, I have to have one of the existing folders selected first. IE, if my snare track is selected, it's not possible to hit the keystroke I've bound to "SWS: Select next folder" and move to the "Guitar bus" folder.
This change would make folder navigation way more intuitive, and be massively appreciated by a whole bunch of blind users that I'm involved in putting a keymap together for.
Thanks for considering,
Scott

Hi,
modifying existing actions is always a little problematic imo because of the risk of breaking existing workflows.
So I've added two new actions for the next SWS version called "SWS: Select nearest previous folder" and  "SWS: Select nearest next folder" which behave the way you're suggesting.

Thanks for the super speedy response! Point taken re modifying
existing actions, and many many thanks for adding the two new ones.
Looking forward to taking them for a spin whenever the next release
drops. :)
On 5/15/18, nofish<EMAIL_ADDRESS>wrote:

Hi,
modifying existing actions is always a little problematic imo because of the
risk of breaking existing workflows.
So I've added two new actions for the next SWS version called "SWS: Select
nearest previous folder" and  "SWS: Select nearest next folder" which behave
the way you're suggesting.
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/reaper-oss/sws/issues/981#issuecomment-389339198

Test build (Win x64):
https://www.dropbox.com/s/vdwek7ynpv8wx66/reaper_sws64.dll?dl=1

Thanks dude. From my initial tests, these behave exactly as I was
hoping! I'll post back if the other testers discover anything weird.
On 6/16/18, nofish<EMAIL_ADDRESS>wrote:

Test build (Win x64):
https://www.dropbox.com/s/vdwek7ynpv8wx66/reaper_sws64.dll?dl=1
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/reaper-oss/sws/issues/981#issuecomment-397821573


Implementing rule-priority annotation. #1268

Checklist

[x] The title of the PR is clear and informative
[x] If applicable, the changes made in the PR have proper test coverage
[x] Issues addressed by the PR are mentioned in the description followed by Fixes.

Description
Enables Request Routing Rule Priority support through the new appgw.ingress.kubernetes.io/rule-priority annotation.
Fixes
#1268

what happens if two ingresses have same priority?

what happens if two ingresses have same priority?

Missed that one! I'll add the check for that case in the getListenerPriorities

Let get this committed, without priority settings for basic HTTP and HTTPs listeners that routing will behave erratically, based on the configuration order

go vet is failing here:
cmd/appgw-ingress/main.go:228:2: misuse of unbuffered os.Signal channel as argument to signal.Notify
which is note related to this PR code.

Any ETA on when we can expect this?

Please note that this also resolves #884.

This change is currently blocking us from implementing AGIC for our product. Is it correct to assume this is just stuck waiting for a code review?

I'm stuck here too, I have a route /api*, /ws* and a default /, only the default works

@akshaysngupta can you take a look at this one?
Thanks!

I'm stuck here too, I have a route /api*, /ws* and a default /, only the default works

Have you looked at this:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: go-server-ingress-affinity
  namespace: test-ag
  annotations:
    kubernetes.io/ingress.class: azure/application-gateway
    appgw.ingress.kubernetes.io/cookie-based-affinity: "true"
    appgw.ingress.kubernetes.io/cookie-based-affinity-distinct-name: "true"
spec:
  rules:
  - http:
      paths:
      - path: /affinity1/
        pathType: Exact
        backend:
          service:
            name: affinity-service
            port:
              number: 80
      - path: /affinity2/
        pathType: Exact
        backend:
          service:
            name: affinity-service
            port:
              number: 80

From : https://azure.github.io/application-gateway-kubernetes-ingress/annotations/#backend-path-prefix

I'm waiting for this annotation since it at least provide a workaround when using wildcast and exact host.
and Prioritization by hashing is very confusing and can easily cause prod accidents.

foo.bar
*.bar

When can we expect to see this change available?

+1
When can we expect to see this change available?

+2
When can we expect to see this change available?

When can we expect to see this change available?

@cmendible @akshaysngupta this feature is not compatible with appgw.ingress.kubernetes.io/ssl-redirect: "true" annotation because same priority is applied to http and https rule.
E0728 08:28:52.784935       1 controller.go:142] network.ApplicationGatewaysClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="ApplicationGatewayRequestRoutingRulePriorityMustBeUnique" Message="Priority must be unique across all the request routing rules. Rules /subscriptions/123456789/resourceGroups/ReG_aks-some-cluster/providers/Microsoft.Network/applicationGateways/aks-some-cluster-app-gateway-1/requestRoutingRules/rr-51aea8d877768c8759ff3cda6ba516f4 and /subscriptions/123456789/resourceGroups/ReG_aks-some-cluster/providers/Microsoft.Network/applicationGateways/aks-some-cluster-app-gateway-1/requestRoutingRules/rr-9ffe3bf76fbc4d64f6671769450bcf69 cannot have the same priority 10000." Details=[]

I'm not sure if the documentation is updated for this annotation.
https://azure.github.io/application-gateway-kubernetes-ingress/annotations/

@cmendible @akshaysngupta this feature is not compatible with appgw.ingress.kubernetes.io/ssl-redirect: "true" annotation because same priority is applied to http and https rule.
E0728 08:28:52.784935       1 controller.go:142] network.ApplicationGatewaysClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="ApplicationGatewayRequestRoutingRulePriorityMustBeUnique" Message="Priority must be unique across all the request routing rules. Rules /subscriptions/123456789/resourceGroups/ReG_aks-some-cluster/providers/Microsoft.Network/applicationGateways/aks-some-cluster-app-gateway-1/requestRoutingRules/rr-51aea8d877768c8759ff3cda6ba516f4 and /subscriptions/123456789/resourceGroups/ReG_aks-some-cluster/providers/Microsoft.Network/applicationGateways/aks-some-cluster-app-gateway-1/requestRoutingRules/rr-9ffe3bf76fbc4d64f6671769450bcf69 cannot have the same priority 10000." Details=[]

@maxarndt  Is this compatibility still a problem?

@Laykou yes, it is:
E0326 09:00:49.636303       1 controller.go:142] network.ApplicationGatewaysClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="ApplicationGatewayRequestRoutingRulePriorityMustBeUnique" Message="Priority must be unique across all the request routing rules. Rules /subscriptions/123456/resourceGroups/ReG_foo-bar/providers/Microsoft.Network/applicationGateways/foo-bar-app-gateway-1/requestRoutingRules/rr-51aea8d877768c8759ff3cda6ba516f4 and /subscriptions/123456/resourceGroups/ReG_foo-bar/providers/Microsoft.Network/applicationGateways/foo-bar-app-gateway-1/requestRoutingRules/rr-9ffe3bf76fbc4d64f6671769450bcf69 cannot have the same priority 10000." Details=[]
E0326 09:00:49.636316       1 worker.go:62] Error processing event.network.ApplicationGatewaysClient#CreateOrUpdate: Failure sending request: StatusCode=400 -- Original Error: Code="ApplicationGatewayRequestRoutingRulePriorityMustBeUnique" Message="Priority must be unique across all the request routing rules. Rules /subscriptions/123456/resourceGroups/ReG_foo-bar/providers/Microsoft.Network/applicationGateways/foo-bar-app-gateway-1/requestRoutingRules/rr-51aea8d877768c8759ff3cda6ba516f4 and /subscriptions/123456/resourceGroups/ReG_foo-bar/providers/Microsoft.Network/applicationGateways/foo-bar-app-gateway-1/requestRoutingRules/rr-9ffe3bf76fbc4d64f6671769450bcf69 cannot have the same priority 10000." Details=[]

Currently we run v1.7.2 of this component. The latest version v1.7.3 does not seem to address this issue.

I found this open issue already https://github.com/Azure/application-gateway-kubernetes-ingress/issues/1515 so we can move the further discussion there


Error: invalid bare carriage return or newline.

After upgrading to 0.9 I got a few mail delivery errors like this:
Delivery has failed permanently for your email to:
	..
No further deliveries will be attempted.
Error during the last delivery attempt:
	writing message as smtp data: invalid bare carriage return or newline, transient
Reporting-MTA: dns; ..

Thinking this commit was a related fix, I upgraded to version v0.0.10-0.20240209102133-ee1db2dde705, but am still getting such delivery errors.
./mox reparse returns these errors:
Reparsing account A...
parsing message 388: quotedprintable: invalid bytes after =: "\r\r\n" (continuing)
244 message(s) reparsed for account A

Reparsing account B...
parsing message 2809: quotedprintable: invalid bytes after =: "\r\r\n" (continuing)
parsing message 2936: quotedprintable: invalid bytes after =: "\r\r\n" (continuing)
parsing message 3334: quotedprintable: invalid bytes after =: "\r\r\n" (continuing)
parsing message 3422: quotedprintable: invalid bytes after =: "\r\r\n" (continuing)
1454 message(s) reparsed for account B

Reparsing account C...
parsing message 4786: first boundary cannot be finishing boundary (continuing)
parsing message 4893: first boundary cannot be finishing boundary (continuing)
586 message(s) reparsed for account C

How to fix stored messages reported by reparse and are there still known issues related to the smtp error above?
Thank you!

Thinking this commit was a related fix, I upgraded to version v0.0.10-0.20240209102133-ee1db2dde705, but am still getting such delivery errors.

That's an error you are stilling getting for new incoming deliveries? Or is that coming from mox parsing the message from disk? It is still possible that mox rejects messages, but I'm thinking we should accept such messages if they are incoming for final delivery, and only keep rejecting them for messages that still need to be delivered (over submission).
The bug was that the smtpserver was adding an extra \r to the message file. Reparse only reads the message as stored on disk, it doesn't fix it. Could you try removing that \r from the on-disk file yourself and running reparse again? If that works, we may need some subcommand or instructions to fix up these issues...

That's an error you are stilling getting for new incoming deliveries? Or is that coming from mox parsing the message from disk? It is still possible that mox rejects messages, but I'm thinking we should accept such messages if they are incoming for final delivery, and only keep rejecting them for messages that still need to be delivered (over submission).

Got this two days ago, after upgrading mox to v0.0.10-0.20240209102133-ee1db2dde705:
Delivery has been delayed of your email to:

<EMAIL_ADDRESS>
Next attempts to deliver: in 4 hours, 8 hours and 16 hours.
If these attempts all fail, you will receive a notice.

Error during the last delivery attempt:

	writing message as smtp data: invalid bare carriage return or newline, transient
Reporting-MTA: dns; mail.server.com
Arrival-Date: 12 Feb 2024 22:32:47 +0000

Final-Recipient<EMAIL_ADDRESS>Action: delayed
Status: 4.0.0
Remote-MTA: dns;alt4.gmail-smtp-in.l.google.com ([<IP_ADDRESS>])
Diagnostic-Code: smtp; 4.0.0 (writing message as smtp data: invalid bare carriage return or newline, transient)
Last-Attempt-Date: 13 Feb 2024 00:24:44 +0000
Will-Retry-Until: 14 Feb 2024 04:24:44 +0000
Content-Type: multipart/alternative;
	boundary=".."
Mime-Version: 1.0
..

The bug was that the smtpserver was adding an extra \r to the message file. Reparse only reads the message as stored on disk, it doesn't fix it. Could you try removing that \r from the on-disk file yourself and running reparse again? If that works, we may need some subcommand or instructions to fix up these issues...

Had a quick go at it but it seams I am unable to locate it, will need to figure out the proper tooling, I welcome any suggestions.
But then, that would probably only fix the stored messages but not fix the delivery issues.
What about this error:
parsing message 4786: first boundary cannot be finishing boundary (continuing)

Thank you!

Ok, I was able to fix the mails with \r\r\n and deleted those reporting first boundary cannot be finishing boundary.
Now mox reparse returns no errors.
Will be watching for new deliveries returninginvalid bare carriage return or newline, transient errors.

I think I found the bug that was causing error message writing message as smtp data: invalid bare carriage return or newline that was failing to deliver outgoing messages. See commit message for the details.
Still good to keep this issue open for the reparse and "\r\r\n" issue.

v0.0.10 is coming soon. It has instructions for fixing the "\r\r\n" issue. Closing this issue, but feel free to reopen if needed.


New-NavContainer does not work Nano Server

I'm using nano server and docker is running on it. New-navcontainer cmdlet is failed when I run the it from nano server using remote. Because some script are not compatible with nano server. After I did some changes on ps, it can run. Here is file list of changes to run on nano server.
navcontainerhelper <IP_ADDRESS>
ContainerHandling
New-NavContainer.ps1
Remove-NavContainer.ps1
ContainerInfo
Get-NavContainerCountry.ps1
Get-NavContainerDebugInfo.ps1
Get-NavContainerEula.ps1
Get-NavContainerGenericTag.ps1
Get-NavContainerImageName.ps1
Get-NavContainerIpAddress.ps1
Get-NavContainerLegal.ps1
Get-NavContainerNavVersion.ps1
Get-NavContainerOsVersion.ps1
Get-NavContainers.ps1
Get-NavContainerSharedFolders.ps1
Test-NavContainer.ps1
Misc
New-DesktopShortcut.ps1
<IP_ADDRESS>.zip

So you are running a Nano-Server and docker inside of that - and then spinning up Nav Containers inside the nano Server in Windows Server Core instances???
What is it you want to achieve with that?

I'm running Nano-Server (VM) and docker is inside the VM. And then spinning up nav containers inside the Nano-Server.
@Kauffmann wrote the blog how to run nav container inside the windows server core. It was perfect but we need windows server license to run the windows server core. I understand from some blog nano server no need the license for windows. I plan to use Nav container to run inside the Nano Server and access from other pc.

I see, thanks - I will consider what to do about this.

As far as I understand it - it is no longer possible to install a Nano Server 2016 - It has been removed from build 1709 - and only exists as a docker image. So you have to run a Windows Server 2016 Standard (Core)

@NAVspecialist thanks for your link and information. I didn't notice this news. Anyway, I just only report what is going on if we use nano server instead of windows core. I do respect @freddydk decision.

https://blog.docker.com/2017/01/docker-windows-server-image2docker/
For production, licensing is at the host level, i.e. each machine or VM which is running Docker. Your Windows licence on the host allows you to run any number of Windows Docker containers on that host. With Windows Server 2016 you get the commercially supported version of Docker included in the licence costs, with support from Microsoft and Docker, Inc.
For development, Docker for Windows runs on Windows 10 and is free, open-source software. Like the server version, your Windows 10 licence allows you to run any number of Windows Docker containers.
I will not pursue any changes to support running navcontainerhelper inside a nano server.


[MBL-1577] Mgriego/mbl 1577

📲 What
Removing the update pledge option from the manage pledge dropdown
🤔 Why
We are unifying things and removing flows that dont make sense
🛠 How
✂
👀 See

📋 QA
Go to the mange pledge screen and confirm the update pledge option is no longer available
Story 📖
MBL-1577

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 68.27%. Comparing base (fc3828b) to head (23ff3b5).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                         Coverage Diff                         @@
##             feature/pledge-redemption-ml1    #2093      +/-   ##
===================================================================
- Coverage                            68.27%   68.27%   -0.01%
+ Complexity                            2125     2124       -1
===================================================================
  Files                                  365      365
  Lines                                21887    21879       -8
  Branches                              3102     3102
===================================================================
- Hits                                 14944    14937       -7
+ Misses                                5279     5277       -2
- Partials                              1664     1665       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Allow use options as locals in static pug templates

Fixes #5. As I mentioned before, static pug imports can be compiled via pug.render, because they don't require dependencies (the whole result is a string). In that case it is possible to use options as locals, just like Pug itself does.
I also mentioned that ins collection is not in use in code, so dependencies is actually not taking into account. This may be an issue, need your help here @aMarCruz
I've updated the tests too, but must notice that tests is loose. I think exact string equality should be used here, so we can be absolutely sure what exactly plugin yields.

@StreetStrider thanks!
your code looks ok but please, uncomment the block related to "ins", this is used to avoid duplicated imports (I know rollup handles this as well), and the dependencies are imported to help recompilation in some environments (although it does not work with rollup-watch).

@aMarCruz, OK, i'll uncomment it. Can you explain how it's used? I've just looked through the local context and see no usage. Is it used by Rollup itself on next stage or it is some form of magic/non-local usage? I can only guess.

Only use for "ins" is track the filename for imports.
import is used to trigger changes that chockidar or similar tools can detect.

Ahhh, got this. side effect in expression here. Didn't catch that for the first glance.

yeah :) don't worry, I'll correct this.

@aMarCruz will glad to see a publish, trying to depend on new version now, 0.1.3 is still the latest.

v0.1.4 is out. Thanks for your contribution!


Filters don't work on Arch Linux due to /usr/bin/python being linked to Python 3 instead

On Arch Linux, /usr/bin/python is linked to /usr/bin/python3 instead of the default /usr/bin/python2 on other distros. Upon testing with returning the version of the interpreter, I found out that MCEdit uses Python 3 to run these filters, ignoring the Python 2 shebang.

Do you use the launcher script (mcedit.sh) or do you invoke MCEdit using command pyhton mcedit.py or mcedit.py?

Tried both

What is the version of Arch Linux you use?
What is your window manager?
Moreover, the log file (and any console message) can be usefull to track where the problem lies.

Knowing that MCEdit itself is running on Python 2, and doesn't run filters in a subprocess, why would your filter report a Python 3 version?

To know from where exactly the issue comes. Finding nothing about this in the log will learn us that the error does not come from our code...
@zatherz, another question: Does this issue happen with custom filters, stock filters (the one embeded in MCEdit) , or both?

Could you try it from both a unicode o non-unicode path? (Unicode=chars outside ansi range).

@zatherz, any news?

Custom filters

Any news on this?

Sorry, I stopped playing Minecraft and I don't have access to MCEdit right now. I will try to remember to check it once I come back home (probably in 2 days)


tuner->receive: how to differentiate between error and timeout?

    //!
    //! Receive packets.
    //! @param [out] buffer Address of TS packet receive buffer.
    //! Read only complete 188-byte TS packets.
    //! @param [in] max_packets Maximum number of packets to read in @a buffer.
    //! @param [in] abort If non-zero, invoked when I/O is interrupted
    //! (in case of user-interrupt, return, otherwise retry).
    //! @param [in,out] report Where to report errors.
    //! @return The number of actually received packets (in the range 1 to @a max_packets).
    //! Returning zero means error or end of input.
    //!
    size_t receive(TSPacket* buffer, size_t max_packets, const AbortInterface* abort, Report& report);

I've set a timeout, but if the above function returns zero, I don't see how to determine whether there was an error or the operation timed out?
Maybe a negative number could indicate the timeout was reached? Or a negative number for error? Or an additional optional parameter with a pointer to a bool that could be filled out in the case of a timeout (to preserve existing code calling this function)?
i.e.
size_t receive(TSPacket* buffer, size_t max_packets, const AbortInterface* abort, Report& report, bool* timed_out = nullptr);
Then in the function:
  // Read packets from the tuner device

size_t got_size;

if (timed_out) {
    *timed_out = false;
}

if (_receive_timeout <= 0) {
    got_size = _sink_filter->Read(buffer, max_packets * PKT_SIZE);
}
else {
    const Time limit(Time::CurrentUTC() + _receive_timeout);
    got_size = _sink_filter->Read(buffer, max_packets * PKT_SIZE, _receive_timeout);
    if (got_size == 0 && Time::CurrentUTC() >= limit) {
        report.error(u"receive timeout on " + _device_name);
        if (timed_out) {
            *timed_out = true;
        }
    }
}

I will check. But please note that making the Tuner class portable was a challenge since Windows DirectShow and LinuxTV have very different interfaces and ways of working. LinuxTV is rather straightforward but DirectShow is doing everything in a uselessly complex way (for instance, simply reading packets from a tuner requires to write a complete DirectShow filter!).
DirectShow is also much less reliable than LinuxTV. To use reliable DVB reception applications, I highly recommend to use Linux instead of Windows. Using TSDuck, the source code will work on both platforms but the reception is usually much more stable on Linux.

Oh that is sad to hear.
Is that true of all Windows apps using DS for tuners then, or something about TSDuck I’m particular.
My test captures seem to have worked ok so far but I’ve not excessively tested things yet.

I mean it works on Windows. But if you'd like a 24x7 application, I would recommend Linux. On Windows, I experimented more packet loss than on Linux, for instance. But this is quite understandable if you compare the complexity of the respective frameworks.
On Linux, you have a common ioctl interface for all tuner operations. All tuner drivers are compliant. When you want to receive packets, just use the system call read() and directly grab your packets from the device through the driver.
On Windows, you need to build a graph of OLE objects which endlessly communicate and push huge buffers of data between each other. The art of killing a fly with a sledgehammer... You cannot expect this to be as reliable as a simple and neat solution.
DirectShow is also unable to read back tuning characteritics. For instance, consider a hardware DVB-T tuner which can reports back the current tuning characteristics. With DVB-T (unlike DVB-S), only the frequency is important. Whatever value you set for constellation, guard interval, etc. it will work. For instance, you may specify 1/32 as guard interval and you can lock the signal even if the actual value is 1/8.
With the same hardware device, once you are locked to a signal, on Linux you can query the current modulation parameters and the correct values will be returned. In the example, you set 1/32 and you get 1/8. Once you know all exact modulation parameters, you can compute the precise bitrate for instance. On Windows, you set 1/32 and you get ... 1/32. In fact, you always get what you set as input, never the actual parameter value.
You mention "Windows apps using DS for tuners". But what are those applications? The only tuner applications I saw on Windows were proprietary TV watching applications which come with the hardware devices. These applications use their proprietary characteristics to interface their own tuner. If you look at the awful code for the Windows implementation of the class Tuner, you will see that the initialization of a tuner tries to build various topologies of DirectShow graphs until one is correctly built. I did that approximately 10 years ago. Using several different tuners, I realized that they would not work with the same type or graph. Using the DirectShow Spy utility, I noticed that the various proprietary TV watching applications were using different types of graph. So, to be generic and to maximize the chance to work with any tuner, TSDuck tries all known forms of graphs until one works. Despite this, 2 years ago, I found another tuner which did not use any form of graph. The proprietary application worked differently. A generic application such as TSDuck is not able to use it.
DirectShow may be fine to build complex media applications. But if your application simply needs to read the raw transport stream out of a tuner, DirectShow is a wonderful piece of crap...

Thanks for the very interesting information. All very good to know.
"You mention  "Windows apps using DS for tuners". But what are those applications?"
Well I meant future applications, that might be tempted to use your library. Your library was the only such library I have found soo far. I was tentatively starting to look at what would be involved in using DShow directly, and found almost no examples of working tuner code and what was there seemed very complicated. Your description above of how you had to use DirectShow Spy to figure stuff out, shows why - it's clearly a mess!
Your library manages to brilliantly conceal all this away, much how FFmpeg/libav does similarly for DS capture amongst many other things, so it really appeals. Already I'm compiling and linking against your library and capturing an HD TS file from my Freeview tuner - the next stage is (as mentioned elsewhere) to figure out the demux and processing of tables, stripping out of unwanted services. Your library has given me a real headstart in adding tuner support to my hobby project - kudos and thank you!

Going back the initial question: the timeout. Depending on the operating system, I think that there are several sources of timeouts for TS reception. There is the one you set with setReceiveTimeout and other driver-level timeouts. It is difficult to distinguish between the two. The one from setReceiveTimeout is a guarantee that the application will not get stuck forever if there is no signal (not all tuners or drivers can correctly report the absence of signal).
My point is that there are so many different sources of errors or timeouts depending on the system, driver and hardware tuner that it is a bit pointless to try to detect each specific type of errors.
Said otherwise, if you want to discriminate between specific errors, it must be because you want to take different actions depending on errors. But, because of this diversity of cases, there would be no guarantee that your application would behave identically with different systems and tuners.
On a pragmatic standpoint, stay simple and robust. Either you receive packets or you don't. If you don't, just adopt always the same behaviour: exit, retry later, check another frequency, whatever.

Yes that makes sense, thank you.


Use flask default config for Quartz default config, to pull in missing keys

fixes  #371
drops Python 3.8 (this is needed anyway, but I wanted to use Python 3.9's | operator to combine dictionaries)

The changes here don't seem to match the title.

@davidism I appreciate this PR now requires a little more work to understand.  But the further changes I made after I first named the PR, thinking the fix would be simple, have enabled the type checking and tests all to pass again for the first time in 6 months.

See #373


Add support for hidden files & folders

I cannot view the hidden folders and files

I cannot view the hidden folders and files

Would be great to have it as an option...

As nice as it would be, UWP API limitations do not allow for this.

Couldn't you bypass that limitation by executing a file listing command from shell for example ?

It is technically possible with a Win32 component, we will revisit this issue in a couple of months after some of the other basics are taken care of.

@yaichenbaum I think this is someday needed so maybe also adding this to the backlog?

This is not on our roadmap right now, we will revisit after launching the app.

I'm going to move this item to #177

Support for viewing hidden items is now available, you can download the latest version of Files from our website https://files.community/download.


[BEAM-3079] Update samza-runner with more features and improvements

Add the following feature support:

Stateful ParDo
Trigger using processing-time

Improvements:

Use URN to translate PTransform
Direct translation of Combine to avoid events buffering
Allow sideinput watermark to populate separately
Support broadcasting PCollectionView
Make state store point to /tmp when running the tests

The reason all three precommits failed is ./gradlew :rat which checks license headers. Go ahead and fix that and I will go ahead and review.

Fixed the headers. Thanks!

@kennknowles : could you please help review it when you get a chance? Thanks!

Yes, sorry for the delay! Reviewing today.

There's a merge commit I see from master in there. And in the diff I see UsesImpulse being added. Can you separate the upstream sync from the upgrade, or is that not possible?

Sorry about it. Let me take a look.

hmm, seems the headers are missing again in this patch. Let me quickly add them.


Missing access recurrent after providing scope

General Troubleshooting

[X] I have checked for similar issues on the Issue-tracker.
[X] I have updated to the latest JDA version
[X] I have checked the branches or the maintainers' PRs for upcoming bug fixes.

Expected Behaviour
Registering a command without scope causes [ErrorResponseException] 50001: Missing Access and after giving access (even kicking and reinviting the bot) it still throws the same error. Seems that if its thrown once its their for life, this was further proven by running the code on a clean bot with a new token and correct auth, and the same code works.
Code Example for Reproduction Steps
protected void updateGuildCommands(Guild guild) {
            guild.updateCommands().addCommands(Commands.slash("test", "example command").queue());
}

Code for JDABuilder or DefaultShardManagerBuilder used
JDA jda = JDABuilder.createDefault(botToken)
                .setChunkingFilter(ChunkingFilter.ALL)
                .setMemberCachePolicy(MemberCachePolicy.ALL)
                .enableIntents(GatewayIntent.GUILD_MEMBERS, GatewayIntent.GUILD_PRESENCES)
                .enableCache(CacheFlag.ACTIVITY, CacheFlag.VOICE_STATE)
                .build();

Exception or Error
ERROR  RestAction queue returned failure: [ErrorResponseException] 50001: Missing Access
net.dv8tion.jda.api.exceptions.ContextException: null

You have to invite the bot with the applications.commands scope to add commands.

I did, i reinvited through in-app and a invite link... both still throw the error. Though the commands seem to still update?


CSS Animation Course !

CSS Animation Course by Net Ninja added, check @ishandeveloper

Hey @icoderharshit !
Congrats on submitting your pull request.
You PR has been merged and the changes will be reflected on the website in a few minutes,.
Do leave a star, if you liked the repo ;)
Happy hacking ! 🎊

Thank you buddy @ishandeveloper !Hoping to see myself in the list of this repo's contributors anytime soon ;) Cool repo.


Feature request: Exitcode

count the founds and return the count as a exitcode to the os.

@glshnu Would you test v1.5.0 release?

great - yes it runs - thanks


CORE-1857: Wrong column size detection on varchar2 fields with char as d...

See https://liquibase.jira.com/browse/CORE-1857

Thanks!


fix: vp start sheet view column

close https://github.com/dream-num/univer-pro/issues/3884

scrolling by wheel in no freeze.
scrolling by drag the scrollbar in no freeze.
scrolling by arrow key to change the current cell in no freeze.
scrolling by wheel after freeze.
scrolling by drag the scrollbar after freeze.
scrolling by arrow key to change the current cell after freeze.
TODO

[ ] More e2e case about viewport scrolling, include freeze & scroll by scrollbar & by wheel

Pull Request Checklist

[ ] Related tickets or issues have been linked in the PR description (or missing issue).
[ ] Naming convention is followed (do please check it especially when you created new plugins, commands and resources).
[ ] Unit tests have been added for the changes (if applicable).
[ ] Breaking changes have been documented (or no breaking changes introduced in this PR).

冻结表格，向右拖拽滚动条，然后按向下方向键，表现：滚动条会自动跳到最左边
2024_12_31 16_43_58 video.webm


WhatsNewKit iOS dependency preventing SwiftUI preview for watchOS app

What happened?
XCode 15 + iOS app (min target iOS 15) + watchOS app (min target watchOS 9).
WhatsNewKit as SPM dependency for the iOS app.
Problem: when previewing SwiftUI views for the watch app, I get this error:
`
== PREVIEW UPDATE ERROR:
SchemeBuildError: Failed to build the scheme ”MyAppWatch Watch App”

'SymbolRenderingMode' is only available in watchOS 8.0 or newer

Emitting module for WhatsNewKit:
/Users/user/Library/Developer/Xcode/DerivedData/MyApp-gglszqrqhbbrmqcgpkravwysjmar/SourcePackages/checkouts/WhatsNewKit/Sources/Models/WhatsNew+Feature+Image.swift:110:31: error: 'SymbolRenderingMode' is only available in watchOS 8.0 or newer
        symboldRenderingMode: SymbolRenderingMode?,`

What are the steps to reproduce?

What is the expected behavior?
Do not block SwiftUI previews

Hi @john-work-ios,
As the WhatsNewKit does not support the watchOS platform please update your Xcode project configuration to exclude WhatsNewKit from your watchOS App Target compilation process.
https://github.com/SvenTiigi/WhatsNewKit/blob/1366a8b5855ea97fc52439f68ff29b15846d9403/Package.swift#L5-L10

That's just it, the watchOS target does not have WhatsNewKit in its dependencies.
The issue only occurs with SwiftUI previews. Any clue?

I'm also experiencing this issue, so I decided to investigate it further. It seems that it's an issue with Xcode previews (source: Apple Developer forums).
In SwiftUIIntrospect, they fixed it by adding a load of #if !os(watchos) statements to the code, but I appreciate that it's inconvenient to do that.
A workaround that I've verified is to make a new scheme that's just for previews. See this forum post for instructions.


Path parm attribute

Add a new Attribute, that allow you to define path-parameters on the method.

If we go with #15, the parameters added here needs to be faltten to.
https://github.com/uderline/openapi-php-attributes/blob/99382fc1fea7190adbbd2a657c0c3090376c070b/src/GeneratorHttp.php#L49-L54

After testing, I found an issue on the IDParam's constructor:
public function __construct(
        private ?string $description = null,
        private string $in = 'path',
        private ?bool $required = null,
    ) {

Which must become:
public function __construct(
        protected ?string $description = null,
        protected string $in = 'path',
        protected ?bool $required = null,
    ) {

Could you change SimpleController to this (line 34) please so we can have a test ?
#[
        GET("/path/{id}/{otherParameter}", ["Dummy"], "Dummy path"),
        PathParameter("otherParameter", description: "Parameter which is not used as an argument in this method"),
        Property(Type::STRING, "prop1"),
        Response(200),
    ]

Now when Parameter::$description is protected (not private), it's accessable from IDParam, so there is no need to duplicate it by adding a variable also at IDParam::$description, so just removed the private from IDParam.
(Also give you permission to my repo, so you easy can just pres edit in githubs web-gui, and do small changes without the need of asking me).


Using Microsoft.AspNetCore.TestHost.TestServer

Do you have any examples or pointers on how to get IdentityServer4 and TestServer to work well together?  Here's my attempt.
I have an ASP.Net Core project that hosts both MVC and IdentityServer4.
I also have an xunit integration test that uses Microsoft.AspNetCore.TestHost.TestServer to call an MVC action.  In the constructor of this test, I'm setting up the HttpClient, and I need to perform the handshake with IdentityServer4 to get a bearer token.  However, I'm not having much luck.
Since TestServer creates its own instance of HttpClient, I had to create a new version of IdentityServer4's TestDiscoveryClient which accepts an HttpClient.  And this is my resulting code:
`
public class ControllerTests
{
	private TestServer _server;
	private HttpClient _client;

	public ControllerTests()
	{
		// Arrange
		var contentRoot = Path.Combine(Directory.GetCurrentDirectory(), @"..\..\..\..\..\..\src\MyApi");
		_server = new TestServer(new WebHostBuilder()
			.UseContentRoot(contentRoot)
			//.UseWebRoot(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"))
			.UseStartup<Startup>()
			);

		_client = _server.CreateClient();

		// discover endpoints from metadata
		var disco = TestDiscoveryClient.GetAsync(_client).Result;
		if (disco.IsError)
		{
			throw new Exception(disco.Error);
		}

		// request token
		var tokenClient = new TokenClient(disco.TokenEndpoint, "client", "secret");
		var tokenResponse = tokenClient.RequestClientCredentialsAsync("api1").Result;

		if (tokenResponse.IsError)
		{
// ********* THROWS EXCEPTION HERE.  Error is "Not Found".
			throw new Exception(tokenResponse.Error);
		}

		_client.SetBearerToken(tokenResponse.AccessToken);
	}

	[Fact]
	public async Task Controller_Test1() // Naming convention  <Feature>_<Action>_<State>_<FailureOrSuccess>
	{
		var response = await _client.PostAsJsonAsync("/api/Test");
		response.EnsureSuccessStatusCode();

		var responseString = await response.Content.ReadAsStringAsync();

		// Assert
		Assert.Equal("true", responseString);
	}

}

`
This code gets throws an exception because I get a "Not Found" response back from IdentityServer4.  I've marked in the code where the exception occurs.

Actually, writing this out helped me figure it out.  The key was to use _server.CreateHandler() to create an HttpMessageHandler to pass to both the DiscovertClient constructor and the TokenClient constructor.

Thanks for sharing!


Dependabot Job fails after taking 60 minutes

Describe the bug
The Azure DevOps Pipeline running Dependabot V2 for an Angular project exceeds the maximum run time of 60 minutes, causing the job to fail.
Categorization

[X] This is not a permissions issue (Seek help at https://github.com/tinglesoftware/dependabot-azure-devops/discussions/1245)

Repository
URL: sorry private company repo
To Reproduce
Steps to reproduce the behavior:

Trigger the pipeline.
Observe as the build time exceeds 60 minutes before completion.

Expected behavior
The pipeline should complete successfully within the allotted 60 minutes.
Screenshots

Extension (please complete the following information):

Host: Azure DevOps
Version: <IP_ADDRESS>3 (Latest)

Server (please complete the following information):

Region: West Europe
Version: Dev19.M244.1 (AzureDevOps_M244_20240924.6)

Additional context
I also noticed in the job logs that the github api rate limit is reached quite often. (712 times)
2024-09-27T18:37:21.5657248Z   proxy | 2024/09/27 18:37:21 [952] Remote response: {"message":"API rate limit exceeded for xxx.xx.xx.x. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)","documentation_url":"https://docs.github.com/rest/overview/resources-in-the-rest-api#rate-limiting"}
2024-09-27T18:37:21.5695270Z updater | 2024/09/27 18:37:21 ERROR <job_update_0_npm_and_yarn_all> Error while generating PR message: GET https://api.github.com/repos/angular/angular/contents/packages/language-service: 403 - API rate limit exceeded for xxx.xx.xx.x . (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.) // See: https://docs.github.com/rest/overview/resources-in-the-rest-api#rate-limiting
2024-09-27T18:37:21.5697807Z updater | 2024/09/27 18:37:21 ERROR <job_update_0_npm_and_yarn_all> /home/dependabot/dependabot-updater/vendor/ruby/3.3.0/gems/octokit-7.2.0/lib/octokit/response/raise_error.rb:14:in `on_complete'
2024-09-27T18:37:21.5698373Z updater | /home/dependabot/dependabot-updater/vendor/ruby/3.3.0/gems/faraday-2.7.11/lib/faraday/middleware.rb:18:in `block in call'

Thanks for the report.
The rate-limiting issue should hopefully be fixed by https://github.com/tinglesoftware/dependabot-azure-devops/pull/1362.

I tried to use a azure devops service connection and a github access token with the input params:
- task: dependabot@2
  inputs:
   gitHubConnection: 'github'
   gitHubAccessToken: $(GITHUB_ACCESS_TOKEN)

I then checked the current github api ratelimit for the user during the pipeline job. The ratelimit didn't change.
curl -H "Authorization: token YOUR_GITHUB_TOKEN" https://api.github.com/rate_limit
Hopefully your changes pass the github credentials correctly.

The job still takes a lot of time.
I only enabled the Backend Part of my project with the nuget dependencies. It takes 45 minutes
The job break with my Frontend dependencies after 60 Minutes.
This is the flame graph of my be dependencies scan:
4_dependabot-update-0-nuget-all-flamegraph.html

Thanks @ConstantinEilebrecht, yes performance is common theme unfortunately across all versions since about v1.24 when Dependabot switch over to a native C# NuGet updater. It can be especially slow if there are a lot of projects or a lot of packages to update. The good news is that there is a complete re-write of the NuGet updater coming soon in dependabot-core; Hopefully this will make NuGet update much more efficient in the near future.
Would you be comfortable sharing the full flame graph html report? It's a bit hard to drill in to sections from the screenshot, the interactive version is a bit more usable. The report doesn't contain any info about your DevOps environment, just stack info from the dependabot-core library. If there isn't any obvious answer in the report, the next step might be to submit this issue to the dependabot-core project, who will be able to understand the issue (and report) a lot better that I do.
In the short-term, here are some possible work around options, if you haven't considered them already:

Is it possible to extend the pipeline timeout?
Is it possible to split the updates over multiple stages/agents using the targetUpdateIds task input option, one stage for NuGet, one stage for NPM?

Hi, @rhyskoedijk
thank you for the forecast reagarding dependabot core and the updater engine.
Here is the full flamegraph report. My Chrome Browser is not able to render this. Does yours :) ? So only provided the screenshort.
flamegraph.zip
Thanks for the hints fighting against the pipeline timeouts. I'll have to check.

@ConstantinEilebrecht @rhyskoedijk I can confirm that using multiple agents with targetUpdateIds works wonderfully.
In the image below I use 3 agents pointing to 3 different targetUpdateIds, without that it would indeed timeout.

@Ossiam
Thanks. Yes this work's. That's kind of a workaround. But it's timeconsuming to configure.

@ConstantinEilebrecht I wasn't able to gain much insight from the flame graph; however, I don't have a lot of experience analyzing these so that isn't saying much. I know it isn't the best answer, but I would suggest opening an issue in dependabot-core and attaching the flame graph to see if they are able to provide any suggestions on what might be wrong.
I did a search for similar issues (NuGet update timeouts) and found these issues which might be worth bumping with your experience too:

https://github.com/dependabot/dependabot-core/issues/9375#issuecomment-2140204218
https://github.com/dependabot/dependabot-core/issues/4991

If you haven't already consider this, you might be able to resolve the timeout problem by doing a manual update of your packages in Visual Studio as a once-off. I recently enabled Dependabot in a NuGet project that took about 5hrs to run and in the end I just decided to manually update the packages and then turn Dependabot on after the manual update; The pipeline runtime dramatically reduced. It's not a perfect solution, but it at least now allows the project to successfully complete it's weekly update without timing out.


Flickering problem when selected

There is a high frequency flickering problem when the mouse is selected for mentioning, is there any optimization idea for this?
There is also this problem in the official case, any expert help?
Window10 64-bit
Chrome Version: 128.0.6613.138
Screen resolution: 1920 x 1080
https://github.com/user-attachments/assets/e8e0a477-4df0-4e80-b970-6aeb631889e5

Hello @jipengju-GitHub, today when I integrating this package to our application, I face the same problem. After debugging for a couple of hours, I am finally able to find a solution.
Root cause of the problem
The main problem is the contenteditable="false" property in the span shown in the image below. I manually remove this from the DOM and then flickering issue gone. But, it is not expected to remove this anyhow. Because, mention blot is an embed and an embed is a group of content, it is not expected to edit in the middle of a content. So, there must be contenteditable="false" in the span.

Moreover, we can never remove that and quill-mention package can never also remove that. Because that span is come from quill Embed package which is extended by MentionBlot class in this quill-mention package.

Solution
However, there is a solution without removing that contenteditable="false" property. We need to add a CSS property user-select: 'text' or user-select: 'auto' in a span (which is a child of the previous span) through inline css or css class (whatever you want). Other CSS property are on the basis of your need. But user-select needs here to fix the flickering issue.
Now the question is how can we achieve this, right? Well, we can follow the approach of Advanced Demo example in this site.
const MentionBlot = Quill.import("blots/mention");
class StyledMentionBlot extends MentionBlot {
    static render(data) {
          const element = document.createElement("span");
          element.innerText = data.value;
          element.style.color = data.color;

          element.style.userSelect = 'text';  // This line will fix the flickering issue

          return element;
     }
}
StyledMentionBlot.blotName = "styled-mention";

Quill.register(StyledMentionBlot);

We also need to apply same user-select style for denotation character. For this, please add the following css class in the stylesheet
.mention {
    .ql-mention-denotation-char {
          user-select: text;
    }
}

After applying these changes, I hope, you will get rid of this flickering issue. Please give me the update if your issue gets solved.


Function delete_files has a bug

Hi CI Team,
into file /system/helpers/file_helper (CI v3.1.10) on line 143 the code check if the "filename" start not with dot but if it is a "directory", and not a file, it's a problem on line 149.
I found this bug about when someone tried to open a url like http://url/.somethings/xxx and CI create a directory like application/cache_db/.somethings/xyz
The Ci report a log error how it's impossibile to delete the file... but it's a directory!
A suggestion to fix it?

I'm not sure I get what you're saying ...
Is it a cache-clear bug or a delete_files() bug? If delete_files() is not doing what is necessary to clear up cache files, we could simply not use it there ...

Hi,
I cannot replicate this issue, and as such I suggest that we close it, unless we get more information.
Here is what I did to try and replicate the issue:

I activated the database caching on one of my live CI3 websites, to generate files and folders in the "cachedb" folder (since it is mentioned in the original message).

I then tried to call the delete_files helper on various files/folders withing the "cachedb" folder, with the $del_dir parameter set to true and false... everything works as expected, no errors, normal behaviour.

The only strange thing is that it won't deleted folders with a name starting with a dot, but that seems to be by choice, see line 123 in file_helper.php (second clause in IF statement):
if (is_dir($filepath) && $filename[0] !== '.' && ! is_link($filepath))
Cheers.


Applying Snorkel for sequence learning?

Hi team,
I encountered this great project and try to use it for my project, basically an NER project, which requires sequential data input. I am still trying to learn how exactly Snorkel works and if you could provide a simple direction for it such as an existing tutorial or a starting point, I'd really appreciate it.
Thank you so much.

Closing as it's repeating the previous issues #810 #838


MAPP v0.0.9 added

@AngryMaciek Singularity seems to work for v1.0.0. Did you test it in a real pipeline? Should we merge to master?

Yes, I tested with snakemake local run on a dummy pipeline and it worked, I think it is finished.


New helper library and test application for UWP support.

Pull request implementing #44

Thank you for the PR. One question though -- can we accomplish the same thing by using the new/fuller Socket API's in the forthcoming System.Net.Sockets 4.1?
Please review:
https://github.com/dotnet/corefx/tree/master/src/System.Net.Sockets/src/System/Net/Sockets
The goal here would be to have a single netstandard1.4 version that works everywhere (including UWP). That code would likely look virtually identical to the Desktop .NET version rather than use the WinRT API's.

Well, not sure how this would work.
Is that already enabled for UWP?
But aside from sockets, there is still a completely different NetworkInformation and NetworkAdapter structure, providing different (or no  😄 ) details... actually, I don't think it ends with the socket APIs and I am not sure if it is worth increasing the overall footprint for a common socket implementation if portions of the code have still to be platform-specific, even if that might be just for determining the interfaces sufficient to send queries to.

Just being nosy, even if netstandard1.4 could be an option to be evaluated for the future... would you consider the additional UWP helper in the meanwhile? :smile:

yeah, fair enough. I can review this and get it merged in shortly


Allow events to run even when focus is lost

eg. sources.Time.periodic(1000) pauses when I switch tabs and resumes when I come back due to requestAnimationFrame.

Hmm, I understand this, but may I ask what is the root problem? What feature are you trying to achieve by wanting the periodic to keep emitting when the tab has changed?

Generating invoices from a pomodoro timer. Need the timer to continue while I work.
Nick asked me to open this issue but also recommended I use Time.animationFrames() which offers the functionality I need.

Doesn’t the events pick up and synchronize when you return to the tab?

@Frikki It pauses the time then resumes where it left off on refocus.

What if you don't use periodic() to track time, but just use periodic() to sample time? For instance with Date.now(). If you want a stopwatch, you can subtract from an initial timestamp.

What is the advantage of this approach over usingTime.animationFrames()? (wanting to learn not saying it's better).

They're comparable, but either way all it's not going to run in the background, since both of them are powered by requestAnimationFrame under the hood, and animations don't need to run in the background.
One option to consider, is that I just checked in Chrome and it seems like setImmediate still runs in the background, albeit slower, and I wouldn't be surprised if the polyfill hack using postMessage works as well.
I might consider powering periodic() and others from a setImmediate schedule to enable this. That additional flexibility in the design would also aid with implementing #29.
animationFrames and throttleAnimation would still be requestAnimationFrame powered and could be used to throttle the UI as needed, so that would be okay. We could just document how requestAnimationFrame works here.

Oh, and a use case as to why this is important: say you want to play a sound on a timer, it would not be great if it just didn't work at all because it was in a background tab. Much better to have it play 500ms later than not at all.

I started having a look and as I hoped the setImmediate polyfill runs in the background in Chrome and Firefox, so I can go ahead with this.


When deleting a tenant with a single database throws an exception

Describe the bug
When deleting a tenant with a single database throws an exception, it deletes the tenant and throws this exception.

Steps to reproduce
I configured the pack as a single database setup and this how I delete my tenant.
public function destroy(Tenant $tenant)
{
    $tenant->domains()->delete();

    $tenant->delete();

    session()->flash('success', 'Deleted');

    return redirect()->route('tenants.index');
}

In case I deleted the tenant first then the domain work without any errors
Your setup

Laravel version: [e.g. 8.12.0]
stancl/tenancy version: [e.g. 3.4.0]

Remove the job that deletes tenant databases from the job pipeline that listens to TenantDeleted in EventServiceProvider


CI: add quick start validation into the e2e

What would you like to be added?
Add quick start validation into the e2e
Why is this needed?
To ensure the correctness of the quick-start

fixed together with #830 by https://github.com/KusionStack/kusion/pull/1197


New option for output directory

This option allows to specify an output directory via the CLI.

thanks for the PR!
Looks like GH actions are failing due to formatting.
Could you run, cargo fmt and update your PR?
thanks!

I made a slight fix to the PR to get the tests to pass. I think i need to update the codecoverage action
For any future PRs you should be able to use cargo test --release from a workpsace.
Thanks!

Thanks for the merge !


Update Polymorphic associations with many to many.md

improve wording to be more correct

:green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart:

As a clarification, there aren't "many to many join tables" but "many join tables" as opposed to "one join table"

Makes sense, thanks!


FLEX-1857 ~ Adds gateway and netmask to proto file.

Protocol expanded with 2 new variables: gateway and netmask which together with fixed IP are part of the IP configuration
Protocol-adapter implement the GetConfiguration and SetConfiguration functions / OSLP messages
Device-simulator returns some default values for these new variables, <IP_ADDRESS> as fixed IP, <IP_ADDRESS> as gateway, <IP_ADDRESS> as netmask

SonarQube analysis reported 18 issues

 18 major

Watch the comments in this conversation to review them.
Top 10 extra issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 ConfigurationToOslpSetConfigurationRequestConverter.java#L32: The Cyclomatic Complexity of this method "convert" is 26 which is greater than 10 authorized.
 OslpGetConfigurationResponseToConfigurationConverter.java#L38: The Cyclomatic Complexity of this method "convert" is 17 which is greater than 10 authorized.
 OslpChannelHandler.java#L281: Refactor this code to not nest more than 3 if/for/while/switch/try statements.
 OslpChannelHandler.java#L363: Refactor this method to throw at most one checked exception instead of: java.io.IOException, com.alliander.osgp.webdevicesimulator.exceptions.DeviceSimulatorException
 OslpChannelHandler.java#L396: This block of commented-out lines of code should be removed.
 OslpChannelHandler.java#L429: The Cyclomatic Complexity of this method "handleRequest" is 31 which is greater than 10 authorized.
 OslpChannelHandler.java#L624: Remove this unused method parameter "device".
 OslpChannelHandler.java#L873: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L1005: Make this IP "<IP_ADDRESS>" address configurable.
 OslpChannelHandler.java#L1057: Remove this unused method parameter "device".

All is well.


Escape double quotes in passwords and use kibana keystore

This PR fixes a bug when a user supplied password for a built-in user account contains one or more double quotes. Since the password is inserted into a JSON string that forms part of a JSON object for the update password API request body, any double quotes need to be escaped within the password to form valid JSON.
When a request to update a built-in user password fails, the deployment should fail, but this was not happening because the status code of the function performing the operation was not propagated correctly. This is also addressed.
In addition to this bug fix, this PR also

creates and uses the kibana keystore to store credentials for Kibana
uses kibana_system for the built-in Kibana user in 7.8.0+

run
npm run links -- --branch master

before merging

Tested with 6.8.11, 7.8.1 and 7.9.0 with passwords containing `,  :, ', ", $, ${foo}, ^, and ~

@Mpdreamz Between the single quote escaping in ubuntuSettings.json and this, there's a lot of contexts to escape 😄
The move to using kibana keystore is needed, not only because it is better than storing credentials in kibana.yml, but also because it is not possible to escape environment variable interpolation in kibana.yml, which could cause passwords containing ${ } to be interpolated and error on Kibana startup. I opened https://github.com/elastic/kibana/issues/75515 to discuss.


[Backport 2.7] Update license headers to reflect the Apache-2.0 OR GPL-2.0-or-later licensing

This is the 2.7 backport of #3357. The same scripts (included in the commit messages) were used to generate these commits, with the exception that the section referencing test_zeroize.gdb was removed, as that file does not exist in this branch.
Any other differences arise from the various scripts that exist only in one branch or the other (particularly with regards to the first commit)

I force pushed this PR to fix a discrepancy in one of the commit messages (in the message portion, it referred to the zeroize script that was never in this branch to being with). The commits are otherwise identical.
@danh-arm please re-review it, when you are able to do so.


fix: remove deprecated global and update hasura

remove HASURA_GRAPHQL_V1_BOOLEAN_NULL_COLLAPSE
bump hasura version to 2.8.3

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


Feedback: DATA Act Schema v0.7

This is the place to leave feedback on v0.7 of the DATA Act Schema. You can read more about the schema here: http://fedspendingtransparency.github.io/data-exchange-standard/
Federal Spending Collaboration home page: http://fedspendingtransparency.github.io/

Gist of our Ten observations on  DATA Act Information Model Schema v0.7 are as follows:

Concepts which are “Hypercube [cube]” incorrectly provided with data attribute as “xbrl:item” in substitution group instead of “xbrldt:hypercubeItem”
Concepts which are “Axis [Rollup/ Dimension]” incorrectly provided with data attribute as “xbrl:item” in substitution group instead of “xbrldt:dimensionItem"
Relationship between “Table [cube/ hypercubes]” and its “Axis [Rollup/ Dimension]” defined by incorrect arc-role "http://xbrl.org/int/dim/arcrole/domain-member" instead of  "http://xbrl.org/int/dim/arcrole/all”
Relationship between “Axis [Rollup/ Dimension]” and its “Domain” defined by incorrect arc-role  “http://xbrl.org/int/dim/arcrole/domain-member” instead of "http://xbrl.org/int/dim/arcrole/hypercube-dimension"
Relationship between “Domain” and its “Domain-member [Member]” defined by incorrect arc-role “http://xbrl.org/int/dim/arcrole/domain-member” instead of "http://xbrl.org/int/dim/arcrole/dimension-domain"
Relationship between “Table (cube/ hypercubes)” and its “Axis [Rollup/ Dimension]”  should be  defined by @xbrldt:targetRole role attribute
For every hypercube concept, "xbrldt:contextElement"  with values of “segment” or “scenario" must  be provided
Member [Child member] cannot be repeated in same role namely concept "{Treasury Account Symbol Entry ID} [Member]" repeated twice in role "TAS-ProgramActiviy-ObjectClass Package" and concept "{Treasury Account Symbol Entry ID} [Member]" repeated twice in role "TAS-ProgramActiviy-ObjectClass-Award Package"
Two concepts developed in taxonomy schema having same documentation [Duplication of same concept] namely "treas_ByAwardandModificationEntryIDDimension" and "treas_ByAwardandModificationEntryIDRollupDimension"
Concepts and its standard labels named correctly but spelled incorrectly, for example
a) treas_ByDirect-ReimburseableFundingSourceDimension
b) treas_SeaTranportationExpected
c) treas_BalancesbyTAS-ProgramActiviy-ObjectClass-AwardCube

For any further details/ clarifications kindly feel free to contact at<EMAIL_ADDRESS>

Thank you for your feedback, Vishram. We will investigate and address your comments in the next release of the schema, as appropriate.

Not all of the fields found on https://openbeta.usaspending.gov/developers or listed in the data dictionary.  For example, descriptionofcontractrequirement.  I'd like to understand the precise definition and more importantly the data lineage of this element.  In fact, let me expand this comment to suggest that a data lineage be provided for all elements within the data dictionary.  This is a common best practice in data governance. I have similar questions wrt firm8aflag and hubzoneflag.  In looking at the data dictionary I do see Program_8A_Participant and HubZoneFirm.  The data dictionary should be expanded to include these additional terms if needed as a crosswalk or standardize the terms so a user can easily search the data dictionary.
Going back to providing a solid data definition and lineage - I would hope to see in a completed data dictionary where/how the 8a flag is set for example.  Is it set based upon a lookup between FPDS and SAM based upon the contract signed date?  Does it confirm that the participant was in the 8a program when the contract was signed, or option awarded (since that is what is in SAM), or is it a field that a human entered at some point because they manually did the checking, or is that field simply to indicate that the agency will receive 8a credit for the award (a company may have graduated from the 8a program (no longer a participant) but be on a long term vehicle that allows agencies to take that 8a credit for another 5 years past the end of program participation date, like 8a STARS II or another vehicle awarded while the company was an 8a).  We need some specificity in the definitions.  This is just one example.  Please don't just say "it must be what is in FPDS-NG".. that doesn't solve the question or meet the basic requirements of a data dictionary. We must have lineage - mapping from information producer to information consumer - in order to have some trust in the data.

@HerschelC I think some of the fields were renamed to be more descriptive. descriptionofcontractrequirement is now Award Description to be more generic across procurement and assistance data.
With respect to your 8a example, I agree that the meaning and  definition should be clear and part of the data dictionary, but I think that's different than documenting the process for how agencies populate an element. Different agencies might have different ways of verifying whether a business is 8a. Maybe it's in SAM, maybe their 8a status is too recent to be in same so they verify manually with SBA. Or are you saying that this should be multiple values (instead of a boolean) to better understand the context?

I think that the Boolean value is fine for the data element.  What I'm talking about is more from the perspective of a data dictionary and the management of data quality and enabling the information consumer to determine whether the data is fit for their purpose.
I think that it is vital to know the lineage of data from where it is produced, however it is produced, to where it is consumed.  This is to give the information consumer some degree of confidence as to the quality of the data that they are about to use to support their fact-based decision.  For example, if I know that an element is manually entered in the award system or parsed from a free form text field entered by a grantee, I'll rate my confidence level in the quality of that element lower than if that element was a lookup from SAM.
The 8a example you gave pains me to read.  All that extra effort when there is a system of record for that information.  In that vein, from a data governance perspective, if I saw this as an answer to how data is created, I'd likely focus process improvement efforts on that process.  If it were a critical element, perhaps the executives using that data didn't know that's how it was created; or if it is a low-value element, why are people spending those extra cycles to populate when an automated process is available.  [Speaking generally, likely good reasons for things to be so.  But concept for process improvement is the point.]
But, using that example, the data producer, Agency X, would have a business rule something to the affect of "8a flag is populated through an API integration with SAM or a manual verification process by the CO".  We need to know how the information is being produced in order to understand the quality of the data - and to optimize the enterprise information management process that should be put around the data to govern it.  This shouldn't be a big ask - hopefully this is being done as part of the data inventory and assessment process to populate and manage the data.  Let's capture that good knowledge rather than lose it to be recreated the next time.
I'm not proposing that the particular capture method of each element be reported in the system - simply that the methods (business rules for producing the data) be documented.  Perhaps, in the case of very critical elements, a flag to indicate lookup vs manual entry would make sense.  Take for example the credit card industry where credit card transactions have a flag to indicate the card number was read from the card or keyed in.  I don't think we're there yet - but having a complete data dictionary would enable a deeper analysis of data quality.
Every step along the information lifecycle is a potential for introduction of a data defect.  Every point along the way should be documented - Agency X, this is how information is produced and this is how it is sent to System A; System A, this his how we receive/validate/change/correct the element and/or use it to derive another element which is sent to System B; System B, this is how we change the element - so that the consumers at the end of the information lifecycle know who all has touched, how and why the data.  This is also valuable information for the data producer who will ultimately be called on to answer questions about the quality of the data that they produced - avoiding the finger pointing between systems and organizations in the information lifecycle.  This is fairly standard practice in data governance.
Also, I should note, that this is intended in business context, not IT.  I understand that there are security concerns about posting system/element level data.  Not the case here.  It's logical - this element comes from the Agency X award system and is created upon award by a lookup to SAM (or the summer intern will type it in).

Oh - on the renaming, I totally understand.  Very tactically, when I'm on the openbeta site trying to look at the fields there, I ctrl-C the element and then flip over to the data dictionary page to search for it.  I'm just asking to my life easier by including the cross walk on the data dictionary page.  (Completely support the better names btw)


[Bug report] Font license not compatible with the Apache license

Version
main branch
Describe what's wrong
A font has been added to the Web UI and it license is not Category A.
"Third party SIL Open Font License v1.1 (OFL-1.1)
(SIL OPEN FONT LICENSE Version 1.1) The Alata font family (https://github.com/SorkinType/Alata)"
Error message and/or stacktrace
N/A but see https://www.apache.org/legal/resolved.html
How to reproduce
N/A
Additional context
font will need to be replaced with one that has a compatible license

Note that some other Google fonts are under the Apache license which would be suitable e.g. https://fonts.google.com/specimen/Roboto/about

I can replace the fonts


Create Game Model and Game Action system

This is a core piece of the code.
We need a game Model that will store the state of a game.
In the Game Action system we need to have a method to create the game and then create the method to allow two users to make a "move".

Initial commit to initiate the game model https://github.com/realm-of-ra/mancala/pull/13


chore: change word delete to cancel if app is not a draft (hl-1469)

Description :sparkles:
Just changes applicant GUI's cancellation button and modal texts to "cancel" rather than "delete" if application has already been sent.

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr3476.dev.hel.ninja :rocket::rocket::rocket:

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr3476.dev.hel.ninja :rocket::rocket::rocket:

API branch is deployed to platta: https://helsinkilisa-pr3476.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-handler-pr3476.dev.hel.ninja :laughing::tada::tada::tada:

TestCafe result is success for https://helsinkilisa-ui-pr3476.dev.hel.ninja :laughing::tada::tada::tada:


join command creating _other tags unnecessarily

Describe the bug
I just successfully ran openapi join on a set of OAS definitions for the first time. It very nicely joined all of the files into a single file without any errors or warnings. For every tag that was in the original files, though, the resulting openap.yaml file contained that tag and another one named {tag-name}_other. For example:
tags:
  - name: account-label
    x-displayName: account-label
  - name: account-label_other
    x-displayName: other
  - name: adjustment
    x-displayName: adjustment
  - name: adjustment_other
    x-displayName: other

All operations in the input files have tags assigned to them. In the openapi.yaml file, there are no operations that have any of these _other tags assigned to them. So, the _other tags are never used, and based on my reading of the join description, they shouldn't have been created.
Expected behavior
No _other tags are created when all operations in input files already have tags.
openapi-cli Version(s)
1.0.0.beta.54

@steve-nay-sage
Would you mind providing the specs you used or example specs? I've been trying to get join to work for days unsuccessfully. It looks like others are having the same issue.

@gregorysimpson13 what version of OAS?

@adamaltman
OAS 3
openapi-cli 1.0.0-beta.58

I didn't have any problems with the join command working and producing output. Of course, it complains if an input file has structural errors, but that's actually helpful, not a problem. I can't share the specs that I'm using, but I'll see if I can create a small set of sample specs.

Okay, here's the infamous Pet Store broken into separate OAS definition files for pets, store, and users. I also created a petstore.intro.yaml file to contain just the intro fields that apply to the whole API. If you extract the zip to a folder, you should be able to run this command to produce a combined openapi.yaml file:
openapi join petstore.intro.yaml petstore.pets.yaml petstore.store.yaml petstore.users.yaml
You want to put the intro file first so that the join command uses it for the intro content.
This worked for me on Windows without any issues.
Have a great 3-day weekend!
Steve
petstore.zip

@steve-nay-sage thanks this really helps!!

@steve-nay-sage Could you please describe some definition examples to reproduce this case? The main idea with _other prefix is to add this in cases if the operation doesn't have any tag.

I'm sorry @SmoliyY and @tatomyr -- I didn't see this question until today.
Since you know about the reason for the _other tags, I don't understand what other information you would like me to provide.
All of my operations have tags, but the join command still adds <tag name>_other for every tag. When I put the resulting file into Redocly or Swagger editor, the _other tags are really obvious but there is no content. The _other tags are just in the list of tags and are not applied to any operations, so I don't think there is any reason to have them.

@steve-nay-sage Is this issue still reproducible with the latest redocly/cli version? Because I can not reproduce it.

Hi @SmoliyY . Yes, I can still reproduce this issue. I joined some OAS definitions, each of which had only one tag. The resulting file has those tags plus an _other tag for each one.
I am at redocly cli version 1.0.0-beta.108.

Here is a zip file containing two OAS files. If you join them, you should see two _other tags in the tags section. If there is something wrong in these files that is causing this, please let me know what I need to change.
tags_other.zip

@steve-nay-sage thank you a lot for the response and this example! I'll mark it as a bug, and let you know if there are anything wrong with your files. Currently I cannot see anything that can cause this issue 😞

Hello @steve-nay-sage ! Thank you for the detailed description and provided examples  🙂 Unfortunately I could not reproduce this issue on the mentioned examples, in MacOS, or Windows 11 using @redocly/cli version 1.6.0. I guess it was fixed in one of the previous releases

Thank you for finding this older issue. I just tested it myself and I did not see any _other tags, so it seems to have been fixed.


Update usage instructions

Update usage instructions and docker images.

you could eventually add an issue about moving the config file into user directory instead of using the packed default config file otherwise

Good point done