Allow for the server to respond with metadata

Hello, I just stumbled across TUS today, and I think it's awesome! Thanks for working on this.
I'd like to use this for my company's uploads, but the server does some post processing after uploading to add some metadata (think things like image dimensions, exif data, video length, etc). I don't see a place in the protocol to allow for responding with extra information upon completion, and the client's don't seem to expose the final server response in order to extract information like this.
Would a maintainer accept an extension to the protocol to allow for such server-based postprocessing?

Thanks for the kind words!

the server does some post processing after uploading to add some metadata (think things like image dimensions, exif data, video length, etc)

The server can always add additional metadata to the upload that the client can fetch using a HEAD request. Using that workaround that is already possible.

client's don't seem to expose the final server response in order to extract information like this

That depends on the clients, of course. tus-js-client, for example, allows to obtain the responses from the server to inspect them for additional data.

Would a maintainer accept an extension to the protocol to allow for such server-based postprocessing?

We're always open a discussion, yes. You might also want to look into https://github.com/tus/tus-resumable-upload-protocol/pull/159 where the topic of post-processing also appears.

The server can always add additional metadata to the upload that the client can fetch using a HEAD request. Using that workaround that is already possible.

This means it has to be a header yes? We have just enough metadata I'm not super comfortable sticking it in a header, because certain proxies have limits on how long headers can be (I believe NGINX is such an example), but I guess we could break it up between lots of different headers, which may work... Or I guess I could return a 200 from a PATCH request (instead of the 204 tusd responds with) and set the metadata there on the final upload.

We're always open a discussion, yes. You might also want to look into #159 where the topic of post-processing also appears.

I'll hop into that discussion and see if I can be helpful.

This means it has to be a header yes?

Yes, metadata is transported using the Upload-Metadata header.

I'll hop into that discussion and see if I can be helpful.

:+1:

@Acconut

The server can always add additional metadata to the upload that the client can fetch using a HEAD request. Using that workaround that is already possible.

Should we clarify this in the spec? The only mention of client/server that I can find right now is this which gives the impression that only the client can supply metadata.

The Client MAY supply the Upload-Metadata header to add additional metadata to the upload creation request. The Server MAY decide to ignore or use this information to further process the request or to reject it. If an upload contains additional metadata, responses to HEAD requests MUST include the Upload-Metadata header and its value as specified by the Client during the creation.

@smatsson there is this:

responses to HEAD requests MUST include the Upload-Metadata header

do you think that it would need to be mentioned that the Server may add to the metadata?

@smatsson sorry, I will delete my comment, I understand your comment now

Should we clarify this in the spec? The only mention of client/server that I can find right now is this which gives the impression that only the client can supply metadata.

Good point, yes we should do that!

After reading the spec a couple of more times, I'm wondering if the server can actually change the metadata? It seems that this is explicitly forbidden in the current spec:

The Client MAY supply the Upload-Metadata header to add additional metadata to the
upload creation request. The Server MAY decide to ignore or use this information to
further process the request or to reject it. If an upload contains additional
metadata, responses to HEAD requests MUST include the Upload-Metadata header
and its value as specified by the Client during the creation.

"As specified by the Client during the creation" being the key part. If the Server changes the metadata it is no longer "as specified by the Client" unless the Server's changes are not included in the HEAD response. But then again, the Client can't access it. Any input @Acconut?

I would have expected that after a successful upload, the server would send a Location header. Then the client could use this Location header to inquire about relevent metadata, possibly at a different endpoint, as this additional metadata looks to me to be outside of the tus protocol.

@smatsson: After reading the spec a couple of more times, I'm wondering if the server can actually change the metadata? It seems that this is explicitly forbidden in the current spec

You are right, I forgot about that wording. IIRC, we added this sentence so that servers cannot change metadata keys that were sent by the client. For example, the client sets filename hello.txt and the server later responds with filename hello.TXT. From this perspective my last comments are wrong and the current metadata system cannot be used to send values back to the client.

@RubenGarcia  I would have expected that after a successful upload, the server would send a Location header. Then the client could use this Location header to inquire about relevent metadata, possibly at a different endpoint, as this additional metadata looks to me to be outside of the tus protocol.

This would also be a possible approach we have thought about. Maybe you want to take a look at the discussion at https://github.com/tus/tus-resumable-upload-protocol/pull/159 and especially the comment at https://github.com/tus/tus-resumable-upload-protocol/pull/159#issuecomment-693586155.

@Acconut I think it's a fair trade off so I'll just leave the PR for clarifying the spec and leave it to the upcoming post processing extension.


Visit scheduler changes

Description
Imported visit scheduler changes
biWeekly -> weekly frequency
ACTIVE_OR_FUTURE -> CURRENT_OR_FUTURE (session template filter)
(Can't run integration tests locally so can't work out what the reported problem is)

Looks good. Haven't checked, but I suspect the integration test issue is this line: https://github.com/ministryofjustice/hmpps-visits-internal-admin-ui/blob/4ba455d87283165aa6f30afe1a072c59b78d15eb/integration_tests/mockApis/visitScheduler.ts#L87
The wiremock stub just uses the default filter option (which has changed).


Introduction and ToC divided in several columns

In relation to https://github.com/metanorma/mn-samples-ieee-private/pull/11
Introduction and table of contents are getting divided in columns.
I suspect because of the influence of "Participants" section.

The count of sections in the Word template is currently fixed, and I'm going to need genuinely OVERWHELMING evidence of a need to make the  count of sections fluid.

https://github.com/metanorma/annotated-express/issues/97
I am very angry about this. I am going to have to make the section set-up fluid, and the sections are set up in CSS: it is going to be DIFFICULT to do this.

Are you replying to a different ticket?

No, although that link wasn't the justification for this I thought at first it was. But fluidity in marking up content with columns, while feasible, is not desirable.

I’m any case, this ticket is about a regression in the participants column configuration overflowing into main content, so it shouldn’t be controversial.

Section 9, at the end of the Standards Board, is meant to be a resumption of single column text, but was still marked up as 3 columns in the CSS. (We had not noticed before, because it contains the single "*Emeritus Member" paragraph normally.
That adjustment made, the document now looks normal. The day will still come when I need to introduce more flexibility in the CSS treatment of sections. Today is not that day.
I have to change the final paragraphs markup to center-aligned for each paragraph: it does not work with alignment indicated in an open block.


Fix formatting and add lint step to CI

I've found formatting error when pushing to my fork. I fix formatting and also add lint job to CI.

It didn't work with a specific lint job because of dependency on libindy. So I just added step into the integration-test job and run the validation with docker. We can eventually split this job into smaller jobs like prepare, lint, integration-tests or whatever is a good practice :)

Fine for now, but it should really be a separate job.
Valid options:

Skip the rebuild step of indy-sdk. We don't need it for linting / compiling
Create a local setup-indy action (like actions/setup-node) that we use in every job to setup the indy dependencies. This way we don't need to build a framework docker image anymore
As you mentioned, separate prepare job to build the framework image


Wiki typo

Description
I found a very small mistake in the wiki.
In https://github.com/alvr-org/ALVR/wiki/Building-From-Source the wiki talks about cargo xtask build-streamer --release which seem to have been renamed build-server in the last versions of alvr
It is a bit of a shame to open an issue for that but it seem that it is not possible to PR the wiki ^^'
General Troubleshooting
N/A
Environment
N/A
Hardware
N/A
Installation
N/A

Well, cargo xtask build-streamer --release is correct for the master branch. You usually build from the master branch anyway. And you actually can make a PR for the wiki, there is a wiki folder in the root of the repo that get synched to the actual GitHub wiki every push.


Adding Notifications file

Proposed changes
Summarize your changes here to communicate with the maintainers and make sure to put the link of that issue
Types of changes
What types of changes does your code introduce to Litmus? Put an x in the boxes that apply

[x] New feature (non-breaking change which adds functionality)
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices applies)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have read the CONTRIBUTING doc
[x] I have signed the commit for DCO to be passed.
[ ] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works (if appropriate)
[ ] I have added necessary documentation (if appropriate)

Dependency

Please add the links to the dependent PR that need to be merged before this (if any).

Special notes for your reviewer:
@rajdas98 @DarthBenro008

Closing this PR due to inactivity, feel free to open it again.


ERROR: Unable to parse file

Hi @goldmane,
I am getting following error for all the classes in my repository
ERROR: Unable to parse file: d:\jenkins\workspace\src\classes\Test_case.cls
ERROR: Parse error at line 656 column 115:
-->  Map<Id, Case> mapCases = new Map<Id, Case>([SELECT Id, OwnerId FROM Case WHERE Id IN :cases]);
Please confirm how can we resolve this issue. It is impacting our entire code analysis as there many occurrences of the above error.
It is very urgent to be resolved.
Thanks

Hi,
I kindly help in addressing the issue as it is a blocker for us. Looking for a positive workaround in the situation.
Thanks
Nikunj Gupta

Hi,
Is there anybody who can respond to this issue. It is really urgent and a blocker for us.
Kindly respond.
Thanks

Hi Nikunj,
We are working on resolving some apex parsing issues. We will take this also in our list and try to resolve it asap. Once we resolved will update you.
Thanks for logging this issue.
Regards,
Rahul Agrawal


Fix test_dot failures for float8 data types

This is a fix to test_dot failures for float8 data types (#1326)
Originally, float8 tensors are converted to fp32 and we performed FMA dot product.
This created kernels with massive instruction count (~70K lines) which cause module build failure errors.
Following NVIDIA's approach, fp8xfp8->fp32 dot is now converted to fp16xfp16->fp32 dot to use DPAS implementation.
This fixes test_dot failures in float8 dtypes.
However, it creates a new compile error on python/tutorial/06-fused-attention.py because 2d block read generates an invalid bitcast operation.
As a workaround, 2d tensor pointer of fp8 tensor is disabled.
Refer to the new issue (#1442 ) for the status of debugging this error.

Basically the logic looks correct.
I personally prefer a dedicated pass for the operand type promoting.
Because in this code changes, there seems a little coupled code in the supportDPAS function with the AccelerateMatmul pass.
It would be nice and clean if we first add the promoting pass to insert the 'tt.fptofp' and then accelerate the tt.dot with the DPAS layout as usual.


Fix inventory types endpoint path

Current invTypes endpoint path for CREST is "/inventory/types/", but docs says that path is "/types/"

Thanks! Cherry-picked as 9413c7c38973201e55d7efcc872fc1461695c493.


lispPackages: init generic-cl and trivial-arguments from Quicklisp

Motivation for this change
Packages the generic-cl and trivial-arguments Lisp systems, as well as their dependencies.
Things done

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

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 123596 at 813b889f run on x86_64-linux 1

7 packages built successfully:

lispPackages.agutil
lispPackages.arrows
lispPackages.cl-environments
lispPackages.generic-cl
lispPackages.static-dispatch
lispPackages.trivial-arguments
tests.trivial


Lazy Load when using $lightbox?

Just checking I haven't missed something obvious - is it possible to lazy load the images when using $lightbox?
If so, how would you change your demo code to do this?

@shaunrobinson Yeah this is possible if you pass the images as objects and set lazy: true.

Can you give me some example code to do this? Thanks!

@shaunrobinson Sure, something like:
<div
    x-data="{
        images: [
            { url: 'image-1.jpg', lazy: true },
            { url: 'image-2.jpg', lazy: true },
            { url: 'image-3.jpg', lazy: true },
        ],
    }"
    x-init="$lightbox(images)"
>
    ...
</div>

Perfect, thanks!


Minor regression in just with latest image:

After pulling today's daily build, I'm unable to use the just or ujust cli. I'm getting a collision on the upgrade alias in bluefin.
share/ublue-os/just🔒 took 22s
❯ ujust
error: Alias `upgrade` first defined on line 3 is redefined on line 10
  ——▶ just/60-custom.just:10:7
   │
10 │ alias upgrade := update
   │       ^^^^^^^

share/ublue-os/just🔒
❯ just
error: Alias `upgrade` first defined on line 3 is redefined on line 10
  ——▶ just/60-custom.just:10:7
   │
10 │ alias upgrade := update
   │       ^^^^^^^

For confirmation on the version I'm running:
share/ublue-os/just🔒
❯ rpm-ostree status
State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: no runs since boot
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bluefin:latest
                   Digest: sha256:e7cf7107bb1c368bf2ca4d83d7f7c62028ca06ac77352433f35eaafd1ad40cd8
                  Version: 39.20240120.0 (2024-01-20T19:22:27Z)

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin:latest
                   Digest: sha256:a696148602eaff0311af0b623bb7d137ce2a58fcc827b47ef40ec04f2d0b37f6
                  Version: 39.20240119.0 (2024-01-19T16:48:52Z)

Fixed downstream, run rpm-ostree update to resolve.

:grimacing:
❯ sudo rpm-ostree update
note: automatic updates (stage) are enabled
Pulling manifest: ostree-image-signed:docker://ghcr.io/ublue-os/bluefin:latest
No upgrade available.

Ah yep, I see it. ublue had already staged the update, i just needed a reboot. My mistake!


Trying to turn Galacticraft and Extra Planets Planets into AR planets through Dimmapping crash

Version of Advanced Rocketry
1.12.2-1.5.0-127-universal
Have you verified this is an issue in the latest unstable build
Y
Version of LibVulpes
1.12.2-0.4.0-51-universal
Version of Minecraft
1.12.2
Forge Version
<IP_ADDRESS>07
Crash report or log (if applicable)
https://pastebin.com/PMPEfj5E (i actually dont know if it is it or not i just copied the log from my launcher help i am not sure)
Description of the problem
Title says it all
Note that without the planetDefs file everything works fine
planetDefs
modlist
Galacticraft planets config file
Extraplanets config file

There's a syntax error in your XML file:
<planet name="Earth" DIMID="0"> was </planet name="Earth" DIMID="0">, and your planet tags are missing the </planet> end tags
<galaxy>
    <star name="Serenity" temp="100" x="0" y="0" numPlanets="10" numGasGiants="1">
	  <planet name="Earth" DIMID="0">
            <atmosphereDensity>100</atmosphereDensity>
            <gravitationalMultiplier>100</gravitationalMultiplier>
            <orbitalDistance>1000</orbitalDistance>
            <orbitalTheta>180</orbitalTheta>
            <rotationalPeriod>24000</rotationalPeriod>
            <planet name="Moon">
                <fogColor>1,1,1</fogColor>
                <skyColor>1,0.5,0.5</skyColor>
                <atmosphereDensity>60</atmosphereDensity>
                <gravitationalMultiplier>20</gravitationalMultiplier>
                <orbitalDistance>150</orbitalDistance>
                <orbitalTheta>190</orbitalTheta>
                <rotationalPeriod>100</rotationalPeriod>
             </planet>
         </planet>
         <planet name="Mercury" DIMID="-13" dimMapping=""></planet>
		 <planet name="Venus" DIMID="-31" dimMapping=""></planet>
		 <planet name="Mars" DIMID="-29" dimMapping=""></planet>
		 <planet name="Jupiter" DIMID="-15" dimMapping=""></planet>
		 <planet name="Saturn" DIMID="-16" dimMapping="">
		     <hasRings>true</hasRings>
                  </planet>
		 <planet name="Uranus" DIMID="-17" dimMapping=""></planet>
		 <planet name="Neptune" DIMID="-18" dimMapping=""></planet>
		 <planet name="Pluto" DIMID="-19" dimMapping=""></planet>
    </star>
</galaxy>

In the future, you can try validating XML here to verify there's not any syntax errors: https://www.xmlvalidation.com/index.php
You may also want to consider adding properties for Mercury thru Pluto, Advanced rocketry will treat them as earthlike unless otherwise specified.

1,1,1
0,0,1
100
100
20
180
24000
0

1,1,1
1,0.5,0.5
180
100
150
190
100
94

advanced rocketry 1.12.2-1.7.0-221-universal
libvulples 1.12.2-0.4.2-75-universal
forge version 1.12.2-<IP_ADDRESS>47
galacticraft moon will not replace luna, and earth will not rename to overworld. explain


Restructure content

The pull request moves the content in index.md to individual files in the new _content folder. My hope is that this makes it easier for contributors to open pull requests without generating merge conflicts.

Deploy preview ready!
Built with commit 2de7caf54f3c7a87dffb1b28b200ccce3c4200d2
https://deploy-preview-1--markdown-guide.netlify.com


fix: use the version of boot config from the version stream instead of master

/test boot-vault-tls

/lgtm


Update batodl.py

Use original image instead of converted jpeg. Detect correct extension.

Hey there! Thanks for the suggestion and pull request! I'm afraid I cannot accept this PR though, as imghdr is deprecated and schedulled to be removed with the next version of Python, which is releasing next month.
Thankfully, what you want is easy, since the original file extension is part of the URL. I have updated this, so please check out da157d27e4f9f961a0c4583b2cf492f09c2ce810 . In this commit I have changed the default behaviour to download all images in their original format, while also allowing for a different extension specified via command line argument. Feel free to check the README on how to use.
Great suggestion nevertheless, I have credited you in the README too, thank you!
Let me know if there's anything else!

I'm still suggesting not using Image.save() as it reencodes source image with poorer quality.

Oh I didn't know that, makes sense that it reencodes if pillow doesn't know what the original extension is.
Updated with commit 2f11f20c62d6a6003a5f44b0a5158858e90284c3 to write the bytes directly to the file if extension not specified or if specified extension matches the original.
Many thanks again, I learned something new!


Implement patito.sql.Case construct

This will allow the definition of temporary unnamed case constructs without having to invoke patito.Relation.case().

Codecov Report

Merging #12 (3e07401) into main (874e411) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main       #12   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            5         6    +1
  Lines          373       389   +16
  Branches       104       108    +4
=========================================
+ Hits           373       389   +16

Impacted Files
Coverage Δ

src/patito/__init__.py
100.00% <100.00%> (ø)

src/patito/sql.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Cuda out or memory when resuming the training

System Info
accelerate version: 0.22.0
os: ubuntu 22.04
python: 3.10.13

Information

[ ] The official example scripts
[X] My own modified scripts

Tasks

[ ] One of the scripts in the examples/ folder of Accelerate or an officially supported no_trainer script in the examples folder of the transformers repo (such as run_no_trainer_glue.py)
[X] My own task or dataset (give details below)

Reproduction
I can train the model normally from scratch on the gpu without OOM issue but when i stop the training process, load the saved states (checkpoints), and continue training, it gives me cuda out of memory error.
Expected behavior
CUDA OOM should be independent on whether the script is loading the training state or not.

Can you try upgrading your accelerate version? IIRC we fixed this


schema: make repeatMark part of att.color

closes #1454

+1, as the remarks in the spec, also indicate that it is allowed to provide an empty element with @func; in those cases, this is the only way to supply a colour.

Closing in favor of #1457.


Helm chart: setting integrations.podOptions.namespaceSelector results in webhook selector being erased

What happened:
I added the following to managerConfig.controllerManagerConfigYaml in my Helm chart configuration:
integrations:
  frameworks:
  - ...
  - "pod"
  podOptions:
    namespaceSelector:
      matchExpressions:
      - key: kubernetes.io/metadata.name
        operator: NotIn
        values: ["kube-system", "kueue-system"]

What you expected to happen:
The pod MutatingWebhook stays correct.
How to reproduce it (as minimally and precisely as possible):

modify the managerConfig.controllerManagerConfigYaml in charts/kueue/values.yaml to the value above. Make sure that podOptions is a child of integrations, this has bitten me in the past.

Run:

helm template -n kueue-system my-release . less

and search for mpod.kb.io and vpod.kb.io. It looks like this:
    name: mpod.kb.io
    namespaceSelector:    # <- NOTE: WRONG INDENTATION
    matchExpressions:
    - key: kubernetes.io/metadata.name
      operator: NotIn
      values:
      - kube-system
      - kueue-system

    name: vpod.kb.io
    namespaceSelector:
    matchExpressions:
    - key: kubernetes.io/metadata.name
      operator: NotIn
      values:
      - kube-system
      - kueue-system

Anything else we need to know?:
To solve this, just change nindent 4 to nindent 6 in add_webhook_pod_mutate and add_webhook_pod_validate of hack/update-helm.sh, and in the corresponding part of the helm chart.

@rhaps0dy if you fixed this, could you open a PR?

Looks like #2086 fixed this.


(Timeout): error when creating "cert-manager.yaml":

Describe the bug:
Error from server (Timeout): error when creating "cert-manager.yaml": the server was unable to return a response in the time allotted, but may still be processing the request (post customresourcedefinitions.apiextensions.k8s.io)
❯ kubectl apply -f cert-manager.yaml
customresourcedefinition.apiextensions.k8s.io/certificaterequests.cert-manager.io configured
customresourcedefinition.apiextensions.k8s.io/certificates.cert-manager.io configured
customresourcedefinition.apiextensions.k8s.io/challenges.acme.cert-manager.io created
customresourcedefinition.apiextensions.k8s.io/issuers.cert-manager.io configured
customresourcedefinition.apiextensions.k8s.io/orders.acme.cert-manager.io configured
namespace/cert-manager unchanged
serviceaccount/cert-manager-cainjector unchanged
serviceaccount/cert-manager unchanged
serviceaccount/cert-manager-webhook unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-cainjector unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-issuers unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-certificates unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-orders unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-challenges unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-view unchanged
clusterrole.rbac.authorization.k8s.io/cert-manager-edit unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-cainjector unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-issuers unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-clusterissuers unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-certificates unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-orders unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-challenges unchanged
clusterrolebinding.rbac.authorization.k8s.io/cert-manager-controller-ingress-shim unchanged
role.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection unchanged
role.rbac.authorization.k8s.io/cert-manager:leaderelection unchanged
role.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving unchanged
rolebinding.rbac.authorization.k8s.io/cert-manager-cainjector:leaderelection unchanged
rolebinding.rbac.authorization.k8s.io/cert-manager:leaderelection configured
rolebinding.rbac.authorization.k8s.io/cert-manager-webhook:dynamic-serving configured
service/cert-manager unchanged
service/cert-manager-webhook unchanged
deployment.apps/cert-manager-cainjector unchanged
deployment.apps/cert-manager unchanged
deployment.apps/cert-manager-webhook unchanged
mutatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook configured
validatingwebhookconfiguration.admissionregistration.k8s.io/cert-manager-webhook configured
Error from server (Timeout): error when creating "cert-manager.yaml": the server was unable to return a response in the time allotted, but may still be processing the request (post customresourcedefinitions.apiextensions.k8s.io)

❯ kubectl get crd | grep cert
certificaterequests.cert-manager.io                2020-11-18T22:34:28Z
certificates.cert-manager.io                       2020-11-18T22:34:49Z
issuers.cert-manager.io                            2020-11-18T22:37:02Z
orders.acme.cert-manager.io                        2020-11-18T22:37:04Z

Expected behaviour:
No timeout error and all crds are installed
kubectl get crd | grep cert
certificaterequests.cert-manager.io                2020-10-27T13:59:54Z
certificates.cert-manager.io                       2020-10-27T13:59:54Z
challenges.acme.cert-manager.io                    2020-10-27T13:59:54Z
clusterissuers.cert-manager.io                     2020-10-27T13:59:54Z
issuers.cert-manager.io                            2020-10-27T13:59:54Z
orders.acme.cert-manager.io                        2020-10-27T13:59:55Z

Steps to reproduce the bug:
Execute kubectl apply -f cert-manager.yaml
Anything else we need to know?:
Environment details::

Kubernetes version: 1.17.9
Cloud-provider/provisioner: AKS
cert-manager version: 1.0.4
Install method: static manifests

/kind bug

Which version of kubectl are you using? Also seems to be related to Kubernetes not cert-manager as it is having issues installing our CRDs


Render control plane from cluster chart

Towards https://github.com/giantswarm/roadmap/issues/3047
What this PR does / why we need it
Render control plane resources from cluster chart.
Checklist

[ ] Update changelog in CHANGELOG.md.

Trigger e2e tests

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

I am just a little bit concerned about how vastly is the values.scheme.json expanding due to the need to propagate some values we had as files or templates before. It will be very hard for the customer to read the file and not to fucked up something by overriding some important default value or to figure out what they need.

I am just a little bit concerned about how vastly is the values.scheme.json expanding due to the need to propagate some values we had as files or templates before. It will be very hard for the customer to read the file and not to fucked up something by overriding some important default value or to figure out what they need.

Absolutely legit comment, I have same concerns. It will definitely not stay like that.
There are some improvements that I would like to do (just when we're done with main part of the restructuring work).
TL;DR make schema smaller, and improve docs so you don't even have to read the schema.
More specifically:

Move some re-usable generic parts of the schema to https://github.com/giantswarm/schema, so values.schema.json is smaller. e.g. we don't rally need a detailed systemd units schema in cluster-aws or in cluster chart, we can just have some reference like "$ref": "https://schema.giantswarm.io/systemd/unit/v0.1.0".
Improve rendering of schema docs, because currently it's not very well readable.
As an extension of the above, write custom (not generated) guideline docs, so if you want to learn how customise something, you don't dig into JSON schema, but you just read some docs about it.

KubeletConfiguration diff is there because we updated TLS cipher suites to included all recommended ones (recommended in k8s docs):

In proxy conf the order of NO_PROXY addresses changed and there is no dangling comma anymore:
Before:
[Service]
Environment="HTTP_PROXY=http://proxy.mcproxy.example.com:4000"
Environment="HTTPS_PROXY=http://proxy.mcproxy.example.com:4000"
Environment="NO_PROXY=<IP_ADDRESS>,localhost,svc,local,<IP_ADDRESS>,<IP_ADDRESS>/16,<IP_ADDRESS>/16,<IP_ADDRESS>/12,test-mc-proxy.example.com,elb.amazonaws.com,"
Environment="http_proxy=http://proxy.mcproxy.example.com:4000"
Environment="https_proxy=http://proxy.mcproxy.example.com:4000"
Environment="no_proxy=<IP_ADDRESS>,localhost,svc,local,<IP_ADDRESS>,<IP_ADDRESS>/16,<IP_ADDRESS>/16,<IP_ADDRESS>/12,test-mc-proxy.example.com,elb.amazonaws.com,"

After:
[Service]
Environment="HTTP_PROXY=http://proxy.mcproxy.example.com:4000"
Environment="HTTPS_PROXY=http://proxy.mcproxy.example.com:4000"
Environment="NO_PROXY=<IP_ADDRESS>,localhost,svc,local,test-mc-proxy.example.com,<IP_ADDRESS>/16,<IP_ADDRESS>/12,elb.amazonaws.com,<IP_ADDRESS>,<IP_ADDRESS>/16"
Environment="http_proxy=http://proxy.mcproxy.example.com:4000"
Environment="https_proxy=http://proxy.mcproxy.example.com:4000"
Environment="no_proxy=<IP_ADDRESS>,localhost,svc,local,test-mc-proxy.example.com,<IP_ADDRESS>/16,<IP_ADDRESS>/12,elb.amazonaws.com,<IP_ADDRESS>,<IP_ADDRESS>/16"

That last e2e test run does not look good 😕 will try again
/run cluster-test-suites

Re-running tests to debug issues
/run cluster-test-suites

Retrying after fixing a bug from the previous e2e test failures :crossed_fingers:
/run cluster-test-suites

Hello world test should be fixed, it passed here when cert-manager got updated in default-apps-aws https://github.com/giantswarm/default-apps-aws/pull/395
Retrying once again, to see if the failure is a flake, and to check more details about the failed certs I saw and commented here.
/run cluster-test-suites

Retrying after e2e test changes (increased min nodes to 2) 🤞
/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

/run cluster-test-suites

✅ Private Suite passes
✅ Upgrade Suite passed
Standard test is failing with this:
[FAILED] Timed out after 600.003s.
  The function passed to Eventually returned the following error:
      <*url.Error | 0xc000d3b8f0>:
      Get "https://hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io/": dial tcp: lookup [hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io](http://hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io/) on <IP_ADDRESS>:53: server misbehaving
      {
          Op: "Get",
          URL: "https://hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io/",
          Err: <*net.OpError | 0xc000016d20>{
              Op: "dial",
              Net: "tcp",
              Source: nil,
              Addr: nil,
              Err: <*net.DNSError | 0xc0005eeb80>{
                  Err: "server misbehaving",
                  Name: "[hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io](http://hello-world.t-tlyhimt6zplvpicasv.gaws.gigantic.io/)",
                  Server: "<IP_ADDRESS>:53",
                  IsTimeout: false,
                  IsTemporary: true,
                  IsNotFound: false,
              },
          },
      }
  In [It] at: /app/internal/common/hello.go:170 @ 01/30/24 13:13:43.278

Another run after actually removing the KubeadmControlPlane resource
/run cluster-test-suites

Same result again:
✅ Private Suite passes
✅ Upgrade Suite passed, with Hello World test passing.
❌ Standard test is failing with what should be the known intermittent network issue with hello world test.
It's been a long one, merging this now!


Django 1.10 support - BaseCommand has no attribute 'option_list'

Looks like this was removed in 1.10, meaning creating search indexes is no longer working:
➜  src git:(master) ✗ python manage.py search_index --create
Traceback (most recent call last):
  File "manage.py", line 23, in <module>
    execute_from_command_line(sys.argv)
  ...
  File "/Users/umbrae/.pyenv/versions/tmpproj/lib/python3.6/site-packages/bungiesearch/management/commands/search_index.py", line 16, in Command
    option_list = BaseCommand.option_list + (
AttributeError: type object 'BaseCommand' has no attribute 'option_list'

Ref: https://docs.djangoproject.com/en/1.8/howto/custom-management-commands/#django.core.management.BaseCommand.option_list

Whoops, noticed this is a duplicate of https://github.com/ChristopherRabotin/bungiesearch/pull/156 - closing.


Noncopyable data

 Here is an overview of what got changed by this pull request:

Issues
======
+ Solved 1
- Added 2

Clones removed
==============
+ src/plugins/render/ui/vbo.cpp  -1
+ src/plugins/render/nodes/uniforms/transform.cpp  -4
+ src/plugins/render/nodes/uniforms/float.cpp  -4
+ src/plugins/render/nodes/uniforms/frame.cpp  -3
+ src/plugins/render/nodes/uniforms/vec3.cpp  -4
+ src/plugins/opencv/nodes/texture.cpp  -2
+ src/plugins/polymesh/nodes/vertex_data.cpp  -1
+ src/plugins/render/nodes/uniforms/unsigned.cpp  -4
+ src/plugins/render/nodes/vertex_data/cgal.cpp  -1
+ src/plugins/render/nodes/uniforms/viewport.cpp  -1

See the complete overview on Codacy


Random Probability Maker

Description 📜
Random Probability Maker files added
*idea and reference from yt videos
Fixes #1635

Type of change 📝

[x] Add a new project

Domain of Contribution 📊

[x] Project using HTML, CSS & JS

Checklist ✅
Please delete options that are not relevant. In order to tick the check box just put x inside them for example [x] like this

[x] I have performed a self-review of my own code or work.
[x] I have commented on my code, particularly in hard-to-understand areas.
[x] My changes generate no new warnings.
[x] I'm GSSoC'22 contributor

Screenshots / Gif (Recommended) 📸

https://user-images.githubusercontent.com/91609324/168284704-fc1ed8c5-6891-4c9d-9f83-01c3bd94c2e2.mp4

Hey Reviewer ... by mistake i have added DigiNews/build folder also ...please delete that folder .
i don't know how to do that.
thank you

2 folder are changed

 2 folder are changed

@Mrjoy832  i'll be closing this issue and adding new one with same issue number and pr number as well


Add custom configuration check

12:07:24 ERROR    errbot.plugin_manager     Error loading RT
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/errbot/plugin_manager.py", line 390, in activate_plugin
    self.activate_plugin_with_version_check(name, self.get_plugin_configuration(name))
  File "/usr/lib/python2.7/site-packages/errbot/plugin_manager.py", line 203, in activate_plugin_with_version_check
    raise PluginConfigurationException(unicode(e))
PluginConfigurationException: changeme [<type 'str'>] is not the same type as foo [<type 'unicode'>]

Current workaround is
    def check_configuration(self, configuration):
        pass

But we should add configuration checks here

Custom configuration check is in. I noticed that giving it bad config triggers an exception, but doesn't output any message to the user. For example:
!plugin RT {}
Plugin configuration done.

Expected behavior:
!plugin RT {}
RT failed to start : missing config value: REST_URL

It looks like this might be "works as designed" -- if configuration check fails, the plugin is disabled. So to test the check, we can call !plugin activate RT to output the error, as done in b650843b75fa3a5c00200630b26e, 3751b642e1c232393b2fc84780067f, and 9eaa02ebec7154f17c5b7685505264a8.


Creating pipeline at cluster level scope

Feature request
Is it possible to create a pipeline at cluster level scope?
Use case
We want to create a standard pipeline which can be used by all the teams who are spread across different namespaces, and also to avoid creating the same pipeline in all namespaces.
we are slowly moving our CI/CD to tekton, but it will more help full if the above use case can be achieved.

Hi @krishnaraman001, thanks for filing this issue! This looks like a duplicate of #1876.

@lbernick I have gone through the #1876, is that feature got implemented or still discussions are going on?
it will be more easy for us if we are able to create a pipeline at cluster level, because most of the teams follow the same pipeline created.

Cluster scoped pipelines haven't yet been implemented. We haven't decided yet on the future of ClusterTask, but the functionality you describe in your use case will eventually be provided by remote resolution (see TEP-0060, which was recently marked as implementable).


fallback to function key via Fn+F*, possible?

Is it possible to bind F* key to a special function by default with fallback to function key when using Fn+F*? I.e. F10 = mute, Fn+F10 = F10? I can achieve opposite behaviour (i.e. F10 = F10, Fn+F10 = mute, see screenshot below), but not the direct one.
Pre-Sierra Karabiner was capable of both, but with Elements I can't achieve such behaviour no matter what setting I use (system wide or elements), Fn+F* does not call a function key.
MBP Retina 2013.
Thanks for your hard work!

I have the same (or maybe the inverse) problem.
I have the OS set to treat function keys as function keys by default (meaning that you need to press Fn to access the volume and so forth). If you remap one with Karabiner, the underlying function (with the Fn key) no longer works.

Yes me too, I have function keys set up as function keys and want F12 to be my forward delete key and fn-F12 to behave as Volume up.

Me too... This issue is here since a couple of months...

As far as I remember, this problem has existed since the rewrite (first working version on Sierra).


support for parameter decryption

Hello,
any plan to support parameter decryption? Now I get only encrypted value.
Thanks

No plans at the moment since I don't use SSM so often anymore, but I might take a look at it sometimes in the future. Feel free to contribute if you have some idea how to handle it already!

No plans at the moment since I don't use SSM so often anymore, but I might take a look at it sometimes in the future. Feel free to contribute if you have some idea how to handle it already!


Disabling scrolling bar

Would it be possible to implement an option (in settings) to disable scrolling bar or move it to the left side?

This is the same as #95.

Yes, you're right, do you think it could be implemented in not so distant future?

I'll close this a duplicate of #95 . That doesn't mean it won't be done, however to be honest it's really far down on my personal TODO list, especially as making it an option is a rather crappy way of solving the usability issue, having it always visible causes other issues, and I have no idea if moving it to the left is even possible (and is against UI tradition which seems not great).
I.e. problem is that it would take a good bit of effort and none of the end results seem actually good, making it bad cost/benefit to invest time in from my side.

I'll close this a duplicate of #95 . That doesn't mean it won't be done, however to be honest it's really far down on my personal TODO list, especially as making it an option is a rather crappy way of solving the usability issue, having it always visible causes other issues, and I have no idea if moving it to the left is even possible (and is against UI tradition which seems not great).
I.e. problem is that it would take a good bit of effort and none of the end results seem actually good, making it bad cost/benefit to invest time in from my side.


[ENHANCEMENT] working with updateOne()

Is there a viable way to adopt a similar strategy with Model.updateOne()?
Pondering on how the pre-save hook works, I understand any document that is retrieved from the database (that can subsequently be save()d) is guaranteed to have a version key which can be used in the $where clause of the current query. An updateOne() operation might not have a versionKey suitable for this purpose.
I believe a pre('updateOne') hook could have the same functionality as pre('save') if the query passed has a key that matches the schema versionKey. Is this too naïve, or am I missing some obvious difficulty?
Otherwise, is there an interest in adding this functionality to this package, or does it fall out of scope?

Good question! I've thought it over, and I think I can definitely add this once a few design decisions have been made. There would be two elements to getting this working:

Passing the current version of the document to the query.
Incrementing the document's version key if the update succeeds.

Grabbing the version key from the filter parameter in the pre-update hook is straightforward, as is adding a $set or $inc for the version key. An issue could arise where the version key is absent from the filter or the version key is a complex query, e.g. version: { $gte: 4, $lte: 10 }, rather than a number.
To avoid any unexpected behaviour and stick to the principle of least astonishment, the best way to implement this might be to pass a flag to the updateOne call to explicitly switch on OCC functionality. A call might look something like this:
await Person.updateOne({ name: 'Jean-Luc Picard' }, { ship: 'USS Enterprise' }, { occ: <version> });

Having the version key for OCC explicitly passed in the options parameter would help the library keep to the principle of least astonishment and allow the user to update an existing codebase relatively simply.
Let me know what you think of the above!

Thanks for the feedback :)
I agree, an explicit flag in the updateOne options sounds like the best strategy to prevent unwanted/unexpected behaviour, and allow incremental codebase updates. It also takes care of the complex version key query problem.
Another point: Is this also applicable to timestamps? E.g. depending on the plugin used on a given schema (version key or timestamp) the value of the occ flag could be assumed to be a versionKey or a timestamp.

Thanks! Yes, I'd think that the timestamp plugin would work in much the same way as the version key plugin; the only difference would be that Mongoose automatically updates the updatedAt timestamp field, so we wouldn't need to include a $set for that at all.

Great! I don't have time to submit a PR right now, but if you want help with this feature around mid-January I'll gladly help.

Any update on this?


Clicker use, but with salvage kits

One very good use of an increased clicker is to salvage a stack. GWToolbox can clearly find your salvage kits, or Sup salvage kits, and apply them. Salvaging a stack of feathered caromi scales, for example. So it would require 2 options, those 2 being which type of salvage kits to use. Ideally, you would be standing next to a trader who sells the type of salvage kits you need, and could restock as needed.

I think there is some sort of bot detection where if you salvage too fast it boots you to character select.

thanks for pinging this. Toolbox used to contain a feature to automatically identify everything in the inventory and one to pick up items. They were eventually removed because they were not used by anyone but botters. I believe this feature falls in the same category. I want to avoid any strong correlation of toolbox with bots, so I would prefer to not implement this.


Release v1.9.0

説明 / Description
v1.9.0 release
チェックリスト / Checklist

MUST

[x] npm test passed
[x] npm run lint was applied without warnings
[ ] changes of /docs/webapp not included (except release branch)
[x] console.log not included (except script file)

RECOMMENDED (it depends on what you change)

[ ] unit test added/updated
[ ] i18n

Codecov Report
Patch and project coverage have no change.

Comparison is base (826e4ca) 69.95% compared to head (de69c4f) 69.95%.

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

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #581   +/-   ##
=======================================
  Coverage   69.95%   69.95%
=======================================
  Files          83       83
  Lines       17388    17388
  Branches     2318     2318
=======================================
  Hits        12163    12163
  Misses       2931     2931
  Partials     2294     2294

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


Detecting changes outside of loaded buffer

Quite often I find myself manually restarting server with 'OmniSharpRestartServer' when there are changes made outside of current buffer. Without doing this autocompletion and code-checks do not work. Examples are:

git operation

fetching changes (I prefer to close all buffers to prevent vim from asking if file should be reloaded)
rebasing (code-checks are a "must have" especially when resolving conflicts)
discarding changes in a file (may not be in a loaded buffer)

after dotnet cli operations:

adding package
adding reference
adding project

file operations:

renaming file in a vim ("Rename file" code action never worked for me)
adding new classes with ":e MyNewClass.cs"

after build when project that uses generated assets (t4 templates, api/schema definition, etc)

Is it possible to teach omnisharp to do this automagically? For example after running build it could check timestamps of files or if new files are available.

Some of these things I don't have any trouble with, particularly :e NewFile.cs which works fine - OmniSharp-vim happily sends the new file along to OmniSharp-roslyn which includes it in the project.
I also think git operations have been working quite well - I'm only asked to reload files if they are modified?
Generally speaking, the idea of watching files isn't something we can do on the OmniSharp-vim end (although we can probably do a better job of keeping modified open buffers in sync with the server). I think there's been some talk of file watching on the OmniSharp-roslyn end? Not sure what the state of that is though.

Are you using the latest version of the stdio server?
Do you use highlighting?

The highlighting actually does a pretty good job of keeping open buffers synchronised with the server, since it is triggered on TextChanged (when g:OmniSharp_highlighting = 2)
Renaming files is an unfortunate one, I (or someone else) need to take a look at that open issue and get renaming via code action working.

I just saw that the TextChanged autocmd is only triggered for changed to the current buffer, so that's not helping keep files synchronised with the server. Perhaps adding a FileChangedShell autocmd triggering an /updatebuffer call would help?
Also, I have set autoread in my .vimrc which helps, but this is perhaps what you try to avoid with your git operations?

Thank you for the quick response.

particularly :e NewFile.cs which works fine

I've just checked and indeed it worked - I must be remembering it wrong or it was some specific scenario - maybe new class was added by the commit pulled and usage of new class was added to loaded buffer.

I also think git operations have been working quite well - I'm only asked to reload files if they are modified?

Does it work if changed file is not loaded into buffer?

Generally speaking, the idea of watching files isn't something we can do on the OmniSharp-vim

Correct, I guess most of this issue is about server side

Are you using the latest version of the stdio server?

Yes

Do you use highlighting?

Yes, g:OmniSharp_highlighting = 3

Also, I have set autoread in my .vimrc which helps,

Thanks for the hint - I guess this is what I needed. I'll check if it works for me.

One more case:

moved file with NERDTree to different folder (old buffer removed, new created)
executing global check returns errors/warning with the former file path, and trying to navigate opens empty buffer

Right, in that case we haven't told the server about the removed file, so it thinks it's still there.
A server-side file watcher would solve it (and all the other issues). I'm not sure how feasible it otherwise is to catch file movements like that in Vim...

It might be a good thing to checkout how omnisharp-vscode handles file renaming/moving. In my experince it worked fine.

I've just fixed #454 - "rename" code actions now work correctly. Is that what you're referring to, @DasCleverle, or more general handling of renames in vim?

I mean the general things, like moving a file in NERDTree. IMO omnisharp-vim should detect the moved file and send the change to the server. Or better, the server should detect changes to the project files and update its state internally.

We might be able to detect non-focused loaded files being moved with autocmds on the vim side, but we won't be able to detect changes to files that haven't been loaded yet, or detect what a file has been renamed to if it happens externally.
I agree this should be happening on the server, but don't know if there are plans for file watchers on all C# files in OmniSharp-roslyn though.

Provided that we can not reliably detect all changes, does server api supports an "intelligent refresh" of the state? Currently I am doing 'server restart' but it is slow on a large code base and "intelligent" refresh could work faster if only few files were change - server knows files of the project/solution so it could cached versus actual file content.

As soon as you open a buffer in a window, OmniSharp-vim updates its state on the server. So if you have updated 2 or 3 files, you can quickly open them all in Vim and that will sync them with the server.
We could add functionality to make it easier to do this by calling a function with a filename or list of filenames to sync them, we just need to work out what this should look like. I suspect it's mostly possible already but I'm mobile right now and can't check the code.

I spoke to David Driscoll on slack the other day and he told me this:

omnisharp-vscode does setup a watcher for the workspaces, so for now I'm more or less mimicking that, that gets piped to the fileschanges api at the moment.

So vscode does perform its own file watching. We can't do that in Vim, although we should be able to have autocmds handle changes to .cs buffers which have been opened. This is something I haven't had time to look into yet.

I still have to run :OmniSharpRestartAllServers, create a new blank buffer, delete all previous buffers and then reopen files when I add a file, otherwise I get bogus "class already defined" errors. Is not having to restart the server every single time I add or rename a file really such low priority?

@zatherz I'm not sure who you think you're talking to, but there's no Microsoft here, just users contributing to a tool we like.
Why would you restart all servers instead of just the one you're currently in? What do you want a /reloadsolution endpoint for, that :OmniSharpRestartServer doesn't do?
There's certainly no need to restart the server when you add a file, that works fine. The issue is with renaming a file, we don't have a good system in place for detecting that that is what happened, when it is done outside OmniSharp-vim.
I had a bit of a look into autocmds and I'm no longer so sure we can detect external changes as I had hoped, so restarting the server after a git checkout may be unavoidable. There are vim processes for detecting when the current file has changed externally, but as far as I could see these don't apply to non-active buffers. I would love to be proven wrong here.
As for renaming files in vim, you just need to be aware of what is happening. OmniSharp-roslyn will still think the file exists until you tell it it doesn't. One way to do this is to manually open the old filename, which will presumably be empty now (depending on how you performed your rename). The empty buffer will be sent to the server, to update its internal representation of the file, after which you won't see duplicates any more. If, however, your buffer is not empty (because you renamed it externally or used a tool which didn't clean up after itself), then you can ggdG your buffer (again, to update the server state) and remove it yourself with :bw.

I was under the impression that this issue was also about adding files, since that by itself produces a redefinition error for me.

OK I don't experience that. I will try to build a very minimal vim config later on but here's a short demo of me trying to recreate your demo.

@zatherz I just tried a very similar test (without NERDtree) using this .vimrc:
filetype off

let &runtimepath .= ',~/.vim/plugged/ale'
let &runtimepath .= ',~/.vim/plugged/omnisharp-vim'

filetype plugin indent on
syntax on

let g:ale_linters = {
\ 'cs': ['OmniSharp'],
\}

I still get OmniSharp support for the new file, and no warning about the global namespace already containing Test.
Can we see your full .vimrc?

Sure: init.vim. OmniSharp version is 1.37.0, NeoVim version is 0.4.3-3 and apparently I'm not the only one experiencing this.

This is an asciinema of me using your config, in the project I created in the previous asciinema:

Clearly there's something else going on here. How did you create your project? Mine is:
mkdir tmp
cd tmp
mkdir test_project
cd test_project
dotnet new console
cd ..
dotnet new sln
dotnet sln add test_project/test_project.csproj
dotnet build
nvim test_project/Program.cs

In your demo, is there any chance you have previously created another file, filled it with class Test {} and then deleted it? Because that would result in this situation, as we haven't told OmniSharp-roslyn that that file should be removed from the workspace. That's the only way I can see how to reproduce what happens in your demo.

So weird! I don't know what else I can do to repro this, we seem to be doing exactly the same things.

@zatherz since we've come this far, do you want to try to add let g:OmniSharp_loglevel = 'debug' to your config, run your demo again, and share the :OmniSharpOpenLog? Then I can do a direct comparison with what happens on my system and try to drill down into where they are diverging.

stdio.log

stdio.log

@zatherz I think you might be using a very outdated version of OmniSharp-vim. The logs now look like this:
NVIM v0.5.0-635-g8c49e3d50

OmniSharp server started.
    Path: /home/nickspoon/.cache/omnisharp-vim/omnisharp-roslyn/run
    Target: /mnt/c/code/test/unittests/tmp.sln
    PID: 18498

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on arch 0.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 1 MSBuild instance(s)
            1: StandAlone 16.8.0 - "/home/nickspoon/.cache/omnisharp-vim/omnisharp-roslyn/omnisharp/.msbuild/Current/Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        MSBUILD_EXE_PATH environment variable set to '/home/nickspoon/.cache/omnisharp-vim/omnisharp-roslyn/omnisharp/.msbuild/Current/Bin/MSBuild.exe'
...

Here's me wiping the entire omnisharp-roslyn dir and letting omnisharp-vim reinstall OmniSharp:

Right, that's the server, OmniSharp-roslyn.
But the logs are written by OmniSharp-vim, the client. Can you try to git pull or :PlugUpdate or however you update your vim plugins? I don't know if it will help this situation but a lot has changed since our logs looked like the one you posted.

I guess I'm still too much of a newbie to vim/neovim because I assumed vundle's PluginInstall also updated plugins, and somehow did not notice PluginUpdate existed. Indeed after updating I'm no longer experiencing the issue with creating new files. Sorry for all the trouble.

Oh that's great to hear, it's always good to be able to get to the bottom of these things.


Ability to fill an image form field.

Is your feature request related to a problem? Please describe.
I have a character sheet PDF that has an image form field. It's intended for the character's portrait. I can't fill it.
Describe the solution you'd like
I'd like to be able to fill an image form field with an image from my server. Ideally, only those with the Browse File Explorer permission would be able to do this.

This would be incredibly useful, ran into this recently.


Provide script to show unmanaged Kubernetes pods

$  ./contrib/k8s/k8s-unmanaged.sh
kube-system/cilium-hqpk7
kube-system/kube-addon-manager-minikube
kube-system/kube-dns-54cccfbdf8-zmv2c
kube-system/kubernetes-dashboard-77d8b98585-g52k5
kube-system/storage-provisioner

@tgraf why isn't kube-dns managed by Cilium?

test-me-please

test-me-please


Is there any way to change apply-button's type attribute from submit to button?

Hi, I'm using date-picker, and I'm wondering if there's any option to change the type attribute of apply-button from  submit to button, since I don't want the submit event triggered when I click apply button 🙇♀
I'm using version1
I'll really appreciate if you could have a check. Thank you!

i don't think i have specified any type attribute for the apply button and when i looked it up, i found out that by default any buttons that are inside form element is treated as 'submit'. But i do find a way to prevent form submit from this component apply button, by conditionally checking the event.submitter property, check what that button is and event.preventDefault() to prevent the form from submitting.
below i attach this code example
<template>
      <form @submit="onSubmit">
            <date-picker :dateInput="dateInput" :initialDates="dates1" />
            <button type="submit">
              Submit
            </button>
      </form>
</template>

<script>
export default {
  ...,
  methods: {
    onSubmit: (e) => {
      if (e.submitter.classList[0] === 'vdpr-datepicker__button') {
        e.preventDefault();
      }

      console.log('on Submit Ran', e);
    },
  },
};
</script>

Thank you so much for kindly giving me a suggestion! ✨
I've actually tried the way you've suggested, but since I'm using Rails framework, the event handler of Rails framework listens the submit event first and makes the actual submit button of the form disabled, and after that the preventDefault() is executed. So I've encountered the problem that the submit button of the form remains disabled one after I click the component's apply-button.
Do you think of any good idea to resolve this problem...? 🙏

unfortunately i don't know much about Rails framework form works, sounds like for some reason the form event listener is not added ? or the Rails have it's own javascript event listener installed on the form ?, anyway you have to find out how to submit the form yourself by using javascript. the form is on the client side when it's rendered and javascript should be able to handle it.
maybe you could try adding
e.stopPropagation(); // Prevent the event from bubbling up

Thank you so much for your reaction !
I've found out the way to resolve this problem by disabling the Rails framework's behavior and implementing the alternative by my own 🙇♀
Thank you so much for your kindness of replying to my message, and thinking of the solution.
Your library helps my developing a product a lot :)


DBZ-649 Support for heterogenous arrays

https://issues.jboss.org/browse/DBZ-649

Ah, I see. In that case I'd suggest to also add at least one more field to
the docs in the arrays, so to better motivate usage of a document as
opposed to single values.

@gunnarmorling Added one more field


Extension not loading

Describe the bug
This worked yesterday, but today, mysteriously, the Ask Toolkit extension isn't working at all in VS Code. The icon shows, and the skills management and documentation panels show but with no contents.  I've tried uninstalling and reinstalling the extension, with and without restarting VS Code.
To Reproduce

Load VS Code
Click the ASK icon

Observed: the two panels are empty
VS Code's debug logs show 'cannot find module'. See screenshot
Screenshots

Desktop (please complete the following information):
The 'about Alexa skills toolkit' is present in the command palette, but has no output. The debug shows "Command 'Alexa: About Alexa Skill Toolkit' resulted in an error (command 'ask.aboutToolkit' not found)"

OS: Debian 10
Visual Studio Code Version: 1.48.2
Alexa Skill Toolkit Version: 2.0.1

I've fudged a fix, edited ~/.vscode/extensions/ask-toolkit.alexa-skills-kit-toolkit-2.0.1/package.json line to point to "./dist/extension"
I guess this is a problem with the 2.0.1 release?

Thanks for pointing this out @ra-hardy . I was able to reproduce this issue but interestingly, when doing our local development before the release, this didn't come up. We will be working on the fix and releasing the patch asap.
For now, please downgrade to version 2.0.0 manually to unblock.

Hey @ra-hardy  , we just released the version 2.0.2 that fixes this issue. Please install the latest version and let us know if you are still facing any issues.

thanks, works now 👍

Awesome, thanks for updating. Once again sorry for the inconvenience. Please let us know if you are facing any issues or have any feedback to share!!


Guard against blank strings in json-string fields

no issue
We've seen an issue where after an import a user record had tour: "" which meant they were unable to log in due to JSON parsing of the empty string failing.

add a guard so that an empty string is transformed to null before parsing
changed serialised to serialized to match spelling in all other serializers

Changes Unknown when pulling 9fc50bdf693381466c6c58c6710254c1147c9ff5 on kevinansfield:json-string-guard into ** on TryGhost:master**.


Handle capitalized keys in error responses

For rest-json, we should handle the case where
the keys can come back as either code/Code and
message/Message.
cc @kyleknap @danielgtaylor

Coverage remained the same at 94.19% when pulling b0428e98750eceea4ddc2e136e40a8850532ba26 on jamesls:fix-rest-json-error-parse into 6d8b806c33825563d7881a5746c2ebdfb70bd7d8 on boto:develop.

LGTM :ship:


incorrect translation(i can't see it in Crowdin)

Description
in English version all is OK, but in Russian we have problem and i don't understand how i can fix it(in Crowdin translation all is OK i think)

Steps To Reproduce

[ ] understand if this can be solved on Crowdin translation
if not:

[ ] find bug in code
[ ] fix it

else:

[ ] fix it in Crowdin

Requirements
always when i focus on "Back", "Forward" or "Up" in left top corner
Files Version
latest Dev(i use git pull ~11:00 07.07.23)
Windows Version
10.0.19045.3086
Log File
no matter(i don't do anything to get bug)

Thanks for the report, Latest changes from crowding haven't been merge yet so it might be fixed on next release.

thx


update authorization

whether via shib or barcode login, require specific ptypes.

implemented in commit https://github.com/birkin/easyrequest_project/commit/d8a2762711c96da84350b66e6619242ce414a40d.


Documentation generation failure

Hi @William-McGonagle , I've forked and synced the repository and even after that, I'm running into an error while using donovan. The error message is something like: Error: ENOENT: no such file or directory, open 'C:\Users\Username\donovan\public\3fF7F52AaVf3.css'.
Steps to generate error:

Clone the repo and run npm install.

After success, run npm link .

Then just run donovan

OS Used: Windows 10.
I'm attaching a screenshot of the error for a better understanding.

Just found the problem– in the src/runPage.js file, we have a function called importCssFile but it's just a placeholder. If you remove the file, that should fix the error.

Thanks a lot @William-McGonagle . That works like a charm.


underscore

I catch building error when i trying to use underscore package.
I've add to package.json underscore 1.8.2 dependency and have import to my component:
import * as _ from 'underscore/underscore';

On build i catch:
error TS2307: Cannot find module 'underscore/underscore'.

Despite this my app work ok.
Is it problem of underscore default package or this seed-project?

Most likely you're lacking the type definition of underscore.
You can install it via: tsd install underscore --save and later reference it within ./app.


CreateApplication is declared Twice!

Why is Application* CreateApplication() declared twice both in Application.h and EntryPoint.h. Shouldn't we just have it declared once then implemented by the Sandbox Application.

this is not declaration in the way you think of ...
extern Hazel::Application* Hazel::CreateApplication();
'extern' tells the compiler that object is defined somewhere else ... as if you included the header that construct that object ...
"they are the same object"
Best regards.

but why do we need to say tell the compiler it's defined somewhere else. We already have a declaration of it in Application.h. The compiler already knows of it's existence

It's not like this  .. i recommend you to watch the compiler and linker videos which TheCherno did on his c++ series ... in little words ... the compiler "translate" each cpp file independently ... the content of a file which is included such as "iostream" is just copied to that file before it's compiled in a process called "pre-process" ... so in conclusion a cpp file it's aware of anything that isn't defined in it's own scope ...
so in our case we could include "Application.h" in "EntryPoint.h" or just tell the compiler that there is a declaration

@Husamdababneh Did you delete your comment. I got an email saying you replied but I don't see it

but why do we need to say tell the compiler it's defined somewhere else. We already have a declaration of it in Application.h.  Declaring it as extern saves having to include Application.h in Entrypoint.h which would also include all the header files Application.h includes and the headers those headers include.

Ok that makes sense to me. On the other hand, client applications import Hazel.h which imports both Application.h and EntryPoint.h. So Application.h and EntryPoint.h end up in the same translation unit.

@Mark-Linton If you want to use EntryPoint.h as a standalone file, there should probably be a foward declaration of the Application class:
class Application;
extern Hazel::Application* Hazel::CreateApplication();

Without this, it doesn't make sense to write a declaration which only compiles, if Application.h header is included before EntryPoint.h in the client application.

@Mark-Linton I agree with what your saying but like @ByteWrangler said, Application.h is already being included. so we are not saving anything; and if we are using only stand-alone EntryPoint.h @Dragon9815  says we should declare Application before hand.
Both of these ideas make sense but for both we are either adding an unnecessary declaration or missing a necessary declaration.
Why don't we either go with @Dragon9815 idea and add the class Application; declaration or go leave it as it is and remove the extern Hazel::Application* Hazel::CreateApplication(); declaration.

Ok that makes sense to me. On the other hand, client applications import Hazel.h which imports both Application.h and EntryPoint.h. So Application.h and EntryPoint.h end up in the same translation unit.

I agree with you, but hypothetically, what if a developer decides not to include hazel.h in favor of only including the headers for components they are going to use. Should each source/header file not be written so that it works as is without some include that the developer doesn't know exists. To understand what I'm trying to say... Look at EntryPoint.h, it's using the logging macros. Macros that only work because log.h is included elsewhere in a file that just happens to be processed before EntryPoint.h.

T

We understand this but what we are saying is that if your including EntryPoint.h then you must be using Application.h anyways. so now one would ever use EntryPoint.h by itself; it just doesn't make sense to do so from a user's point of view.

It's not exactly a declaration as others have pointed out (extern), but yes you're probably right, there's no need for it to be "declared" again since Application.h is included by the client. Unless anyone has any other thoughts, I'll probably remove it from EntryPoint.h soon.

@TheCherno Thanks for clearing it up. I removed it from my version and it didn't make any difference; I thought you put it there for something in the future that I didn't fully understand.


Activate GH CodeQL analysis when our version of Kotlin is supported

Analysis currently fails with:
[2023-02-16 08:38:00] [autobuild] e: com.semmle.extractor.java.interceptors.KotlinInterceptor$KotlinVersionTooRecentError: Kotlin version 1.8.10 is too recent. CodeQL currently supports versions below 1.8.10\n' +

OK, it is now supported: https://github.com/github/codeql/pull/12090


Migrate build to Gradle 5

Now that Gradle 5 is out our build should also be migrated to it.

In Gradle 5.0, the OSGi Plugin was deprecated.
A migration to the BND plugin is described here: Replacing use of Gradle's deprecated OSGi Plugin

Beside making the build work with Gradle 5, what is the exact scope of this issue:

Do we need to address deprecations (such as OSGi or @Deprecated APIs)?
Do we need to implement new Gradle 5 recommendations such as lazy configuration or task configuration avoidance?

(obviously, if the answers to those questions if "no", it does not prevent creating new issues to address those points later if deemed necessary)

That's a good question and I am not 100% sure either.

Do we need to address deprecations (such as OSGi or @Deprecated APIs)?

We definitely need support for OSGi.
I don't really care whether this happens via an official OSGi plugin or some other external plugin.
(Even though it looks like these frequent breaks in Gradle don't make things easier if you use external plugins...)
I am ok with still using Deprecated APIs, we can still change that later.
If we get run with Gradle 5 and see the respective deprecation warnings we can still follow up and work on these later.

Do we need to implement new Gradle 5 recommendations such as lazy configuration or task configuration avoidance?

That doesn't tell me much.
Whatever works should be fine.


[BUG] No error for unauthenticated users

Has this bug been raised before?

[X] I have checked "open" AND "closed" issues and this is not a duplicate

Where did you find this bug?
Production
Description
When an unauthenticated user tries to rate a repo, they are automatically redirected to the homepage. No errors are displayed or instructions to guide them that they should sign up first.
This can make it hard for new users navigating the platform
Steps to Reproduce

Log out of Reporater or open in an incognito window
Go to the home page.
Try viewing or rating a repo

Screenshots

Do you want to work on this issue?
Yes
If "yes" to above, please explain how you would technically implement this
I would redirect the user to the login page instead. So that they can log in first leading to a better user experience.

Good spot, this was fixed earlier today shortly after the deployment


ISPN-10352 externalizing code and config

https://issues.jboss.org/browse/ISPN-10352

Merged manually.


Mitigate Technical debt - bonus round

https://codeclimate.com/github/kodadot/nft-gallery/trends/technical_debt

https://codeclimate.com/github/kodadot/nft-gallery/trends/churn

there are few files who needs attention

https://codeclimate.com/github/kodadot/nft-gallery/issues

on it boss ❤

I see smol change!

I see smol change!

still working on this :D

@yangwao I'll help on this.

Le Nuxt 3 goes well. Keeping around 60hrs would be desirable.


Failed to resolve component: ais-instant-search

I've followed the provided instructions to the point, but still can't get this module to work with Nuxt3.
My current very basic test-page looks like this:

<template>
  <ais-instant-search :search-client="client" index-name="publications">
    <ais-configure :hits-per-page.camel="10" />
    <ais-search-box
      placeholder="Search here…"
      class="searchbox"
    ></ais-search-box>
    <ais-hits>
      <template v-slot="{ items }">

{{ title }}

            <img :src="poster" :alt="`Poster from ${title}`" />

      </template>
    </ais-hits>
  </ais-instant-search>
</template>

Is there something crucial missing? Any help would be appreciated.

Hi @bennyzen
First can you tell me a bit more about your config ?
Nuxt version
Meilisearch version ?
What error message you got ? in browser / console ?
Meilisearch is work via API ?

I just setup an all new Nuxt3 instance (@latest) and followed all the steps described here https://nuxt-meilisearch-docs.netlify.app/.
My nuxt.config.ts looks like this:
import { defineNuxtConfig } from "nuxt";

// https://v3.nuxtjs.org/api/configuration/nuxt.config
export default defineNuxtConfig({
  typescript: {
    shim: false,
  },
  modules: ["nuxt-meilisearch"],
  meilisearch: {
    hostUrl: "https://example.com",
    apiKey:
      "w5rj0olA39cfasdasdasdasdassdasdasdasdasd46e1b43d235c967ed38a926beecbc88284f4027a0caa",
    instantSearch: { theme: "algolia" }, // default true
    // optional
    clientOptions: {
      placeholderSearch: true, // default
      paginationTotalHits: 50, // default
      finitePagination: true, // default
      primaryKey: undefined, // default
      keepZeroFacets: false, // default
    },
  },
});

Meili is working in production for other projects and is not the problem here.

@bennyzen
it looks like a algolia lib problem.
try
instantSearch: true
What about meilisearch instance ? works well ? can you reach it via api ( postman or curl ? )

Tried with instantSearch: true. Still the same errors as stated above. He can't find the Algolia components.
Yes, Meili can be reached and works flawlessly using Postman/Insomnia.

Ok
after digging, I got same error
@bennyzen
I do my best to fix it

A quick fix could be
import {
  AisInstantSearch,
  AisConfigure,
  AisHits,
  AisSearchBox,
} from 'vue-instantsearch/vue3/es';

until I fix

@bennyzen
https://stackblitz.com/edit/nuxt-starter-yd4wte?file=app.vue

A quick fix could be
import {
  AisInstantSearch,
  AisConfigure,
  AisHits,
  AisSearchBox,
} from 'vue-instantsearch/vue3/es';

until I fix into the lib

Ok, this works as temporary fix. Thank you.

It was hard to fix
I choose to let final user import manually his components.
Global Vue Component importing will OVER load final bundle.
Now it not a bug , it a feature 😉


Exception: Unknown response format: application/json

I deployed an application three months ago using sodapy. It was fully functional up until Monday, November 28. On my deployed instance, I get "502 Bad Gateway". Running locally, I get the following error:
File "/Users/File/Path/Crime.py", line 12, in get_crimes
crimes = client.get("cuks-n6tp",limit=3000)

File "/usr/local/lib/python2.7/site-packages/sodapy/__init__.py", line 237, in get
params=params)

File "/usr/local/lib/python2.7/site-packages/sodapy/__init__.py", line 368, in _perform_request
.format(content_type))

Exception: Unknown response format: application/json

I don't understand the exception. The data set is here and clearly json: https://data.sfgov.org/resource/cuks-n6tp.json
Let me know if this is the wrong place to post this question.
Thanks,
Alex

I modified my _ _ init _ _.py. I commented out (start line 353):
        # content_type = response.headers.get('content-type').strip().lower()
        # if re.match(r'application\/json;\s*charset=utf-8', content_type):
        #     return response.json()
        # elif re.match(r'text\/csv;\s*charset=utf-8', content_type):
        #     csv_stream = StringIO(response.text)
        #     return [line for line in csv.reader(csv_stream)]
        # elif re.match(r'application\/rdf\+xml;\s*charset=utf-8', content_type):
        #     return response.content
        # elif re.match(r'text\/plain;\s*charset=utf-8', content_type):
        #     try:
        #         return json.loads(response.text)
        #     except ValueError:
        #         return response.text
        # else:
        #     raise Exception("Unknown response format: {0}"
        #                     .format(content_type))

and just added return response.json()
This works for my application. The regex for json: re.match(r'application\/json;\s*charset=utf-8', content_type): on line 354 does not match application/json. Maybe my data source changed its header? Should the regex match json without charset specified?
Thanks for reading.

What version of python are you using? It may not be related, but I had to upgrade python in order to meet Socrata's new security requirements.

Hey, yeah I agree that this regex could definitely be more flexible about what it matches. I'll push an update for that soon.

Gah, referenced wrong issue number in commit message. Anyway, 48634ace7.

@timwis I'm using Python 2.7.6. Thanks for the link, I'll have to upgrade.
@xmunoz Thanks for the speedy fix!

Just ran into this as well, seems Socrata may have updated the content-type headers for a bunch of datasets around 11/28 midnight UTC. Awesome to see there's already a fix, thanks @xmunoz!

Thanks @xmunoz!

Thank you everybody for the bug reporting and the thanks! I came for the data, but stayed for the amazingly supportive Socrata open source dev community :champagne:.


docker-build declares its own provider and therefore cannot be easily deleted

Description
The docker-build submodule declares its own docker provider. This means that if I create an instance of this module and later try to delete it, terraform plan will fail with an error like this:
│ Error: Provider configuration not present
│
│ To work with module.docker_image.docker_registry_image.this (orphan) its original provider configuration at
│ module.docker_image.provider["registry.terraform.io/kreuzwerker/docker"] is required, but it has been removed. This occurs when a provider configuration is removed while objects
│ created by that provider still exist in the state. Re-add the provider configuration to destroy module.docker_image.docker_registry_image.this (orphan), after which you can
│ remove the provider configuration again.

This doesn't play well with CI pipelines as the only way to fix this is to manually run terraform state rm. Can you instead tell users to properly declare their docker provider in their root module instead?
See https://stackoverflow.com/a/58403262 for more information.

I can confirm that this is quite confusing.

I don't know what I was thinking about while making this, so I will fix this tomorrow :)


PHP Support, Code Style, and Guidelines

An open discussion about standards for spider.

Would anyone object to moving the minimum requirements from 5.4 to 5.5 or even 5.6? I would really love to use generators in the orient driver and variadic functions would be super helpful as well. I feel like anyone using a graph database isn't using $3/month hosting and has more control over their php versions.

I'd like to stick with PSR2 style as much as possible. If we diverge, just make it consistent.

Scrutinizer is giving a fuss about equal signs not being aligned. Thoughts?

Anything else to consider?

IMHO
PHP Version. Absolutely!
PRS2 -> ok! What kind of divergences there are should only be for necessity and should also be documented somewhere. Probably in a contributors.md?
Can you give an example of code for the equals sign issue?
Scott

We can change the scrutinizer behavior for PSR2 only. We'll just have to go through the enabled features to make sure we aren't forgetting anything.
Here's how I feel about aligning equals signs:
It's cool with const declarations. Otherwise it's a pain. I'm not against removing this check entirely.
PHP version : I'm not against bumping the requirements up to 5.6.
I think all things considered 5.5 is definitely a doable bump. I don't know how common 5.6 is though.

Scrutinizer complains about
$one = 1;
$anotherOne = 2;
$aThird = 3;

It wants
$one               = 1
$anotherOne  = 2
$aThrid           = 3

I'll do some research on 5.6. The equals being aligned bothers me, except in constants. It makes it too hard to read and is just a pain.

It wants

$one               = 1
$anotherOne  = 2
$aThrid           = 3

I agree with constants lining up. Normal variables shouldn't. (and I saw that Github's editor adds spaces. Strange). Do variables need to be initialized with values at the top of the classes?
5.6 isn't used much compared to 5.4 or even 5.5. I'd bet with 7 coming, there will probably be more of a jump to 7 than to 5.6 too. 5.5 will be EOL'ed in 10 months and active support dropped a month ago. With all that in mind, I would still say 5.6 should be the minimum.
Spider is going to be so cool, people will do anything to get it anyway, right? :smile:
Scott

According to PSR (and good sense for APIs), yes. But PHP doesn't require it. We do initialize all of our class properties though.

I agree. I think 5.6 is a good requirement. If we get complaints, we may be able to down that, but I doubt it will be a problem.
I'd love to use PHP7, but it's just too soon for that. I am super excited about return types.

Yeah same. The whole typecasting changes are really exiting. I, however, feel like it's missing the possibility to have multiple signatures along the lines of what java does:
class A {
   public function method(String $a, String $b): String{
      return $a+' '+$b;
   }

   public function method(String $a): String{
      return $this->method('Hello', $a);
   }

   public function method(): String{
      return $this->method('world');
   }
}

$a = new A();
$a->method(); // Hello world
$a->method('dylan'); // Hello Dylan
$a->method('Some', 'text'); // Some text

That would make it complete. Because right now the more we typecast (which is good) the less flexibility we have (which is bad).. We're experiencing this right now with out internal prefixes.
Anyways I digress, lets go with 5.6. It will simplify travis testing as well.

Cool. So, to recap and close this:

Tell scrutinizer to use PSR
Ignore the aligned equal signs for variables, keep them for constants.
Bump to 5.6
Beg PHP to allow multiple signature is 7.1 :smirk_cat:

The other thing I'm excited about in PHP7 is anonymous classes. It'll make testing SO much simpler.

Yeah definitely!

Great. Do you know how to configure scrutinizer?

Yes, I'll have a look around if you want.

I would appreciate it. You can commit directly to develop rather than a pr for something so simple.

I'll document the scrutinizer documentation so we can check we all agree in the PR #84 . I think it's safe if I bump it up to 5.6 as well.

Merged the PR. Closing this as I think we should be good.


attest: pass OCI remote opts to att resolver.

Summary

We need cred helpers and other info set in the remote opts to resolve the upstream attesations, otherwise this will fail in automated environments.
/cc @priyawadhwa @strongjz
Release Note

Fixed bug in cosign attest where OCI remote configuration wasn't properly set.

Documentation

n/a

thanks!


Upgraded code to Java 8 and Joda time.

I have rebased my branch from your current master so that you don't have to resolve conflicts, tests passed but NPE at some test:
ERROR FixApplicationAdapter - Uncaught application exception.
io.netty.handler.codec.DecoderException: java.lang.NullPointerException
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99)
	at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
	at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:283)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:187)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
	at io.netty.channel.AbstractChannelHandlerContext.access$600(AbstractChannelHandlerContext.java:32)
	at io.netty.channel.AbstractChannelHandlerContext$7.run(AbstractChannelHandlerContext.java:299)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:380)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)
	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
	at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
	at fixio.netty.pipeline.server.ServerSessionHandler.initSession(ServerSessionHandler.java:122)
	at fixio.netty.pipeline.server.ServerSessionHandler.decode(ServerSessionHandler.java:76)
	at fixio.netty.pipeline.server.ServerSessionHandler.decode(ServerSessionHandler.java:33)
	at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81)
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89)
	... 18 more

PriceServer is not working for me, OOM.

PriceServer is not working for me, OOM.
I'll check it

Guido I saw the similar exception in travis after merge (review branch), that's why I postponed with  merge to develop/master.
Could you tell what's exact wrong with Java8 JSR-310 implementation?
I think we're fine with millisecond precision since FIX protocol supports only milliseconds (http://www.fixtradingcommunity.org/FIXimate/FIXimate3.0/en/FIX.5.0SP2/fix_datatypes.html - e.g. UTCTimestamp)
The only reason to move to to JodaTime I see is to avoid type conversion if JodaTime is used everywhere in the system. For this case I think there should be support for getting/setting JSR-310 and Joda types in fix field types.

Java time at least on Debian was giving me an exception when I was trying to create a LocalTime with millis, basically the constructor (builder pattern like), doesn't have a parameter for millis, instead you have to pass nanos (millis converted to nanos) and when I did that the JVM complained of not supporting such operation which for me was a blocker.

The offending call was: http://docs.oracle.com/javase/8/docs/api/java/time/LocalTime.html#of-int-int-int-int-

I'll give it another try tonight and see if I can make it work, maybe was that I was missing NTP package on my Debian laptop, but such exception scared me a bit, either it is that I'm using Debian Jessie RC1 with Oracle Java 8u31 and for the time being is buggy? Honestly I have my concerns if this is a JVM bug, though I'm not sure why Java time is so much more difficult to use than Joda time when Joda time was the initial proposal.

Now there is nothing to merge

Yes, deleting branch to remove noise.


Typo in the article

In the description of the example there is a mistake in the recipient. Should be<EMAIL_ADDRESS>

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

ID: 37f94b78-3cf4-2200-fae8-b85664ba01ce
Version Independent ID: 0036d9e4-4a4d-8113-269f-801728138f5d
Content: Test-Message (ExchangePowerShell)
Content Source: exchange/exchange-ps/exchange/Test-Message.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@MatiLag, fixed.
In the future, you too can make changes like this directly without opening an issue first. Instructions are here.
Thanks for the feedback.
Closing


Error to load content

Hi!
I got this error when I try reach /onixpro on my project
cURL error 7: Failed to connect to onixpro.net port 443 after 279 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://onixpro.net/api/onix/news/

Seems is offline

Hi limatheus, Yes that was a service that you could load desing from the onix server but that service has been shutdown unfortunately, i have done a quick fix so i don't ping the server.


Duplicated API call for model.json on short URL pages - call for /.model.json

I have experienced additional API call in network tab for  /.model.json  for page which use short url like https://foo/bar/ - this call is not present for https://foo/bar.html
Expected Behaviour : For https://foo/bar/   model json call should be   https://foo/bar.model.json
Actual Behaviour: For https://foo/bar/   model json call is duplicated   https://foo/bar.model.json and https://foo/.model.json
On some servers where /. calls are blocked this behavior is breaking page loading - as /.model.json is rejected - and application doesn't get JSON as this second /.model.json overwriting  first proper call /bar.model.json

Hello @Bastek333 , I would like to know if there was a solution to the problem? Thanks!

Hello @Bastek333 , I would like to know if there was a solution to the problem? Thanks!

Sort of overcome solution - just JS code removing / on the end of url in address bar on the page load. Dirty solution as anyway they are 2 calls for model.json


Request to add server for Chinese anime

Hi there,
This app is awesome!  I used the option to import Chinese anime which works good, but the server seems to miss some shows.  Could you consider to also scrape the site https://anitaku.pe/?
Thank you for considering!

No more features update or new sources for this app (for now).
All suggestions will be considered for next app (external based source app)


The ccache-memcached-server seems to be too slow

I've tested setting up ccache for docker builds using this project, and it did lead me to a working solution, but this server on its own didn't fulfill my needs.
I used the memcached-scopefix branch of ccache as documented here, and this part seems to work fine just as intended.
However, when using this nodejs/sqlite based memcached server, the actual benefit of the whole ccache setup seems to vanish. When doing a build that doesn't exist in the cache (where every compiled file needs to store a new object in the memcached server), the build time ended up at around 3x the normal build time without ccache. (With normal vanilla ccache, I normally see only a few percent overhead.) And when rerunning the build with a fully populated cache in memcached, the build time was faster than the uncached run, but still slower than a plain build without ccache - making the whole setup pointless for me.
When swapping out this server and using the plain RAM based memcached (debian package memcached), things run as I had hoped (with the normal few-percent slowdown by ccache for uncached runs, and significant speedup when cached). Using a RAM based memcached probably isn't worth it though, since one doesn't want to keep the whole ccache in memory.
In the end I chose to use memcachedb instead (which is berkeley db based), which seems to do pretty much what I had hoped that this does. Memcachedb does lack a setting for a max cache size and purging entries in a LRU fashion, so instead it needs to be completely wiped regularly. (I'm using the prebuilt docker image clover/memcachedb - starting it with docker run --rm --name ccache --network ci_network --network-alias ccache clover/memcachedb memcachedb -u root -H /var/lib/memcachedb -f default.db -v -p 11211 makes it mostly a drop-in replacement for this server.)
So in short - functionally this project is perfect and I haven't found any other that exactly matches it (disk based persistence and LRU purging when passing a max size), but performance wise it seems very far from other memcached implementations. Am I missing something in my setup (I just ran docker run --rm --name ccache --network ci_network --network-alias ccache webhare/ccache-memcached-server:latest as documented), or does it work better with a specific type of workload?

@mstorsjo I don't know if you're still using this project, but we've been getting good results with the experimental mounts in the new docker buildkit.
RUN --mount=type=cache,target=/tmp/ccache CCACHE_DIR=/tmp/ccache make

now seems to do what we want without needing a separate server. So this project may now be obsolete

Yes, I'm still using this. Thanks - that feature looks great as a permanent solution for ccache!


Update find student command

This pull-request renames the command keyword to find students from find to findstudent.
Additionally, it also enhances the command by returning students that contain tags that match any of the specified keywords (in addition to their name).

Codecov Report

Merging #141 (9c4d31a) into master (e3f3360) will increase coverage by 0.25%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master     #141      +/-   ##
============================================
+ Coverage     51.16%   51.41%   +0.25%
- Complexity      514      521       +7
============================================
  Files           112      112
  Lines          2324     2336      +12
  Branches        252      255       +3
============================================
+ Hits           1189     1201      +12
  Misses         1055     1055
  Partials         80       80

Impacted Files
Coverage Δ

...edu/address/logic/commands/FindStudentCommand.java
100.00% <100.00%> (ø)

...address/logic/parser/FindStudentCommandParser.java
100.00% <100.00%> (ø)

...va/seedu/address/logic/parser/TeachWhatParser.java
65.21% <100.00%> (ø)

...l/student/NameOrTagsContainsKeywordsPredicate.java
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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