Added nginx-sm entry

Signed-off-by: afzal442<EMAIL_ADDRESS>Description
This PR fixes #542
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

@dhruv0000 please review today.

@afzal442 I see the pr/draft label. Is the PR ready for review or not?

hi @AnshumanDhiman, I have spent long hrs debugging this. Could you look into it? Need your kind help. Thanks.

hi @AnshumanDhiman, I have spent long hrs debugging this. Could you look into it? Need your kind help. Thanks.

What have you already tried? What isn't working?

sorry @leecalcote! what I have found so far and debugged that you can see on the screen shot;

so here mesh_version is taken as none and currently this mesh_name is getting repeated;
HTMS!

HTMS

@afzal442 So mesh name getting repeated is fine, till they are of different version, if they are of same version, the latest one is selected. And I think you found the error yourself. The NGINX test had no version while running the test (i.e. mesh_version = none). Ig I will run another test with the proper version setup and this should be fixed.

@dhruv0000 TSM!

if service meshes are of same version, the latest one is selected.

How to select the latest one? Or can we add the latest ones on smi.json file where we can allow to fetch the latest ones?

The NGINX test had no version while running the test

I can go like this if(mesh_version === none && mesh_name !== 'Nginx Service Mesh') to fetch 'Nginx SM'

I will run another test with the proper version setup and this should be fixed.

Sure!

HTMS

@afzal442 So mesh name getting repeated is fine, till they are of different version, if they are of same version, the latest one is selected. And I think you found the error yourself. The NGINX test had no version while running the test (i.e. mesh_version = none). Ig I will run another test with the proper version setup and this should be fixed.

@dhruv0000 did you get the chance to run the test?

@leecalcote you can see the recent commit makes it possible to fetch the latest ones of smi compliances; have a look at screenshot as well;

Once the test is done with the proper version setup, Nginx will come into this place.

@afzal442 please engage with @dhruv0000

@leecalcote, @dhruv0000 has already run the test, currently in meshery.io there's no logo for NGINX because we haven't put up one yet, but the data is now there. I think we can merge this PR.

Looks good. Lets merge.

@leecalcote, @dhruv0000 has already run the test, currently in meshery.io there's no logo for NGINX because we haven't put up one yet, but the data is now there. I think we can merge this PR.

Ya. the test is up. I think we are good to merge,

LGTM!


Whirlpool 1.0.1

upgrade to whirlpool-client 1.0.0-beta23

Updated for whirlpool-client 1.0.1 (public release)

Thank you


[SPARK-17635][SQL] Remove hardcode "agg_plan" in HashAggregateExec

What changes were proposed in this pull request?
"agg_plan" are hardcoded in HashAggregateExec, which have potential issue, so removing them.
How was this patch tested?
existing tests.

Can one of the admins verify this patch?

Jenkins, test this please.

LGTM

Test build #3287 has started for PR 15199 at commit a0730d8.

Test build #3287 has finished for PR 15199 at commit a0730d8.

This patch fails MiMa tests.
This patch merges cleanly.
This patch adds no public classes.

Jenkins, retest this please.

Test build #65788 has started for PR 15199 at commit a0730d8.

Test build #65788 has finished for PR 15199 at commit a0730d8.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/65788/
Test PASSed.

Does this affect branch-2.0?

This was introduced by https://github.com/apache/spark/pull/14176. It should not affect Branch-2.0

Thanks all, it should be fixed in master only, my mistake.


Add glyphset definition for GF Latin PriAfrican

This add the language codes to the GF Latin PriAfrican glyphset definition. See #137.

Thank you Denis. The FAIL in the Fontbakery test in the CI is actually related to glyphsets. I will debug this early next week.

I'll merge this and work on the CI problem in the main branch afterwards. The problem lies in the calculation of glyphset support. Currently, support is assumed as soon as >80% of a glyphset is covered. With the proposed changes to GF_Latin_PriAfrican, many normal Latin fonts will now be seen as supporting PriAfrican, with the shape_languages check kicking in for that glyphset.
I will have to change the way the glyphset support is calculated.


AnimationController.forward() called after AnimationController.dispose()

Seems you guys already worked on this in a previous version but even after upgrading to the latest version 1.3.5 I'm still getting it.
════════ Exception caught by foundation library ════════════════════════════════
The following assertion was thrown while dispatching notifications for AdvancedDrawerController:
AnimationController.forward() called after AnimationController.dispose()
AnimationController methods should not be used after calling dispose.
'package:flutter/src/animation/animation_controller.dart':
animation_controller.dart:1
Failed assertion: line 459 pos 7: '_ticker != null'

When the exception was thrown, this was the stack
#2      AnimationController.forward
animation_controller.dart:459
#3      _AdvancedDrawerState._handleControllerChanged
widget.dart:245
#4      ChangeNotifier.notifyListeners
change_notifier.dart:381
#5      ValueNotifier.value=
change_notifier.dart:495
#6      AdvancedDrawerController.showDrawer
controller.dart:11
#7      SBScaffoldDrawerAnimationState.handleMenuButtonPressed
sb_scaffold_drawer_animation.dart:102
#8      _InkResponseState.handleTap
ink_well.dart:1096
#9      GestureRecognizer.invokeCallback
recognizer.dart:253
#10     TapGestureRecognizer.handleTapUp
tap.dart:627
#11     BaseTapGestureRecognizer._checkUp
tap.dart:306
#12     BaseTapGestureRecognizer.acceptGesture
tap.dart:276
#13     GestureArenaManager.sweep
arena.dart:163
#14     GestureBinding.handleEvent
binding.dart:464
#15     GestureBinding.dispatchEvent
binding.dart:440
#16     RendererBinding.dispatchEvent
binding.dart:336
#17     GestureBinding._handlePointerEventImmediately
binding.dart:395
#18     GestureBinding.handlePointerEvent
binding.dart:357
#19     GestureBinding._flushPointerEventQueue
binding.dart:314
#20     GestureBinding._handlePointerDataPacket
binding.dart:295
#21     _invoke1 (dart:ui/hooks.dart:164:13)
#22     PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:361:7)
#23     _dispatchPointerDataPacket (dart:ui/hooks.dart:91:31)
(elided 2 frames from class _AssertionError)
The AdvancedDrawerController sending notification was: AdvancedDrawerController#78928(Instance of 'AdvancedDrawerValue')
════════════════════════════════════════════════════════════════════════════════

════════ Exception caught by foundation library ════════════════════════════════
AnimationController.forward() called after AnimationController.dispose()
AnimationController methods should not be used after calling dispose.
'package:flutter/src/animation/animation_controller.dart':
animation_controller.dart:1
Failed assertion: line 459 pos 7: '_ticker != null'

Hi @amrogad ,
I encountered a similar issue. Were you able to resolve the issue?

@burhanaksendir  nope sorry, the project I had this issue with was abandoned, and no one was replying here anyway so I just closed the issue and moved on

I have prepared a pull request that resolves the problem. You can find the pull request here.


Package request: mercury-browser

Project description
Mercury is a firefox fork that implements patches that focus on speed, security, and privacy.
Highlights:

Compiler optimizations include AVX, AES, LTO and PGO.
Learn more about these compiler optimizations and how they work Here.
Patches and UI changes that enhance useability, and strengthen privacy/security.
Many of these come from LibreWolf, Waterfox, PlasmaFox, and GNU IceCat

Metadata

homepage URL: https://thorium.rocks/mercury
source URL: https://github.com/Alex313031/Mercury
license: MPL-2.0
platforms: unix, linux, (unsure if it will build on darwin, they don't release prebuilt binaries for it and I can't test it)

I wanted to try Mercury out of curiosity and built this:

package.nix
{ lib
, stdenv
, fetchurl
, autoPatchelfHook
, dpkg
, wrapGAppsHook
, alsa-lib
, browserpass
, bukubrow
, cairo
, cups
, dbus
, dbus-glib
, ffmpeg
, fontconfig
, freetype
, fx-cast-bridge
, glib
, glibc
, gnome-browser-connector
, gtk3
, harfbuzz
, libcanberra
, libdbusmenu
, libdbusmenu-gtk3
, libglvnd
, libjack2
, libkrb5
, libnotify
, libpulseaudio
, libva
, lyx
, mesa
, nspr
, nss
, opensc
, pango
, pciutils
, pipewire
, plasma5Packages
, sndio
, speechd
, tridactyl-native
, udev
, uget-integrator
, vulkan-loader
, xdg-utils
, xorg
}:

stdenv.mkDerivation rec {
  pname = "mercury-browser";
  version = "115.4.0";

  src = fetchurl {
    url = "https://github.com/Alex313031/Mercury/releases/download/v.${version}/mercury-browser_${version}_amd64.deb";
    hash = "sha256-78b2QEgf312TDBIy4lXzYUBtTfdNui3VJBbyDfXqOtc=";
  };

  nativeBuildInputs = [
    autoPatchelfHook
    dpkg
    wrapGAppsHook
  ];

  buildInputs = [
    stdenv.cc.cc.lib
    alsa-lib
    browserpass
    bukubrow
    cairo
    cups
    dbus
    dbus-glib
    ffmpeg
    fontconfig
    freetype
    fx-cast-bridge
    glib
    glibc
    gnome-browser-connector
    gtk3
    harfbuzz
    libcanberra
    libdbusmenu
    libdbusmenu-gtk3
    libglvnd
    libjack2
    libkrb5
    libnotify
    libpulseaudio
    libva
    lyx
    mesa
    nspr
    nss
    opensc
    pango
    pciutils
    pipewire
    plasma5Packages.plasma-browser-integration
    sndio
    speechd
    tridactyl-native
    udev
    uget-integrator
    vulkan-loader
    xdg-utils
    xorg.libxcb
    xorg.libX11
    xorg.libXcursor
    xorg.libXcomposite
    xorg.libXdamage
    xorg.libXext
    xorg.libXfixes
    xorg.libXi
    xorg.libXrandr
    xorg.libXrender
    xorg.libXtst
    xorg.libXxf86vm
  ];

  installPhase = ''
    runHook preInstall

    mkdir -p $out
    cp -r usr/* $out

    substituteInPlace $out/share/applications/mercury-browser.desktop \
      --replace Exec=mercury-browser Exec=$out/bin/mercury-browser \
      --replace StartupWMClass=mercury StartupWMClass=mercury-default \
      --replace Icon=mercury Icon=$out/share/icons/hicolor/512x512/apps/mercury.png
    addAutoPatchelfSearchPath $out/lib/mercury
    substituteInPlace $out/bin/mercury-browser \
      --replace 'export LD_LIBRARY_PATH' "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${ lib.makeLibraryPath buildInputs }:$out/lib/mercury" \
      --replace /usr $out

    runHook postInstall
  '';

  meta = with lib; {
    description = "Compiler-optimized private Firefox fork";
    homepage = "https://thorium.rocks/mercury";
    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
    license = licenses.unfree;
    platforms = [ "x86_64-linux" ];
    mainProgram = "mercury-browser";
  };
}

But I decided I wasn't going to use it, so I'll leave this here in case it's helpful to anyone. It seems to work just fine, but I haven't tested it very much.

I'll give it a try, and if it works well, I could submit a PR adding this to nixpkgs.

Any news related to this?

Any news related to this?

It's been working fine for me all week, I'll make a PR after I'm off work

Any news related to this?

It's been working fine for me all week, I'll make a PR after I'm off work

Hey, sounds great any progress?

Any news related to this?

It's been working fine for me all week, I'll make a PR after I'm off work

Hey, sounds great any progress?

Whoops, I kinda forgot about this. I have stopped using mercury in favour of just using firefox devedition, but I can change the package name and make a PR, but I'd rather not be the sole maintainer for it.

any update on this?

any update on this?

There's a PR but it's segfaulting so it's currently blocked by that

any update on this?

There's a PR but it's segfaulting so it's currently blocked by that

ah I see

https://github.com/Alex313031/Mercury/tags
Looks like it is dead, but also insufficient security posture with skipped releases like on Thorium Browser or in this case quite a number of versions behind upstream..


Paste entire line between braces

VSCode Version:Version 1.14.2 (1.14.2)
OS Version: macOS 10.12.6

Steps to Reproduce:

move cursor to any line, press cmd+c to copy  entire line
move cursor between two empty braces, press cmd + v to paste
expect: content was pasted in braces
what happened: content was pasted up to the braces

Reproduces without extensions: Yes

We did this by purpose and @alexandrudima can elaborate :)

Ctrl+C or Copy with a collapsed selection is kind of a very special action specific to a bunch of code editors.
Other applications refuse to copy anything to the clipboard unless a selection is made.
Anyways, copying with a collapsed selection will also influence the paste action such that the copied line is pasted above the line you are pasting in. AFAIK, this is what other editors do and what users coming from those other editors expect... a way to duplicate a line via ctrl+c and ctrl+v...


Disallow non-parenthesized lambda expr in f-string

Summary
This PR updates the handling of disallowing non-parenthesized lambda expr in
f-strings.
Previously, the lexer was used to emit an empty FStringMiddle token in certain
cases for which there's no pattern in the parser to match. That would then raise
an unexpected token error while parsing.
This PR adds a new f-string error type LambdaWithoutParentheses. In cases
where the parser still can't detect the error, it's guaranteed to be caught by
the fact that there's no FStringMiddle token in the pattern.
Test Plan
Add test cases wherever we throw the LambdaWithoutParentheses error.

Current dependencies on/for this PR:

main

PR #7035

PR #7013

PR #6659

PR #7041

PR #7211

PR #7263   👈

This comment was auto-generated by Graphite.


BigQuery: review visibilities

Review visibility in BigQuery classes.  e.g. public methods in classes with default/package private access.

We decided not to change package visibility for now. For workaround, please consider using discovery-based client.


esp32s3 ADC converter has glitches on certain bit boundaries (IDFGH-12394)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
We use an esp32s3 and its inbuilt ADC for a control loop. We noticed, that the control loop achieves much better results (more precise / less noisy) around certain ADC values compared to others.
While debugging this, I noticed that the esp32s3 ADC has conversion glitches whenver the 9th, 6th, 4th or 0th bit becomes set.
Attached is a measurement of a 0.2Hz ramp from 0V to 1V. The ADC is running in the lowest range. The continuous adc driver is used, the sampling frequency is 18.8kHz (arbitrary, same results for other frequencies). The ADC is ADC0 and the input GPIO is GPIO8. ADC calibration is not used, as this cannot help here anyway. There also is a 100Ohm + 100nF (=16kHZ) RC lowpass.
IDF version is v5.1.1 (e088c3766ba440e72268b458a68f27b6e7d63986).
The graph shows there are glitches around every 16 (yellow), 64 (green), 512 (red) ADC counts (glitches for 0th bit are not shown). We tested this with multiple esp32s3 microcontrollers.

Can you confirm the behaviour?
Can you add the problem to the errata sheet?

I forgot to add, there is a 100Ohm + 100nF (=16kHZ) RC lowpass close to the input pin of the module. This should not be relevant to the problem, though.

So the esp32s3 datasheet specifies a DNL of 4LSB for the ADC. This means the glitches ("missing codes") are actually within spec.
However, it would still be nice if this was documented, as this seems systematic.

Do you have calibration enabled?
Can this be a rounding error when applying calibration?

Calibration loses 2 bits of precision, the input  values 0-4096 are mapped to integers from 0-1000. It is hardly, if at all, visible after passing the data through the calibration driver.

I can imagine it might result in more 'jumpy' behavior when it is done doing just integer math.
But I don't know how the calibration is done internally, so just speculating.
I do know the modern ESP32-variants do not just have a single point calibration (thus linear map), but some even have a non-linear calibration curve present (or at least the functions suggest this).


Add ByteCounter to calculate model size

What does this PR do?

Fixes #10074
all credits to @RuRo :)
Tests are already there for get_model_size_mb
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[x] Did you list all the breaking changes introduced by this pull request?
[x] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

@tchaton couldn't find a way to support this for Deepspeed/FSDP. Discussed this with @SeanNaren too and seems like its right not practically possible since weights are sharded and are not kept in a readable format. I'd suggest for now we can merge this for v1.5 and later we can explore more.


search for perla config file in parent directories

Added searching for perla.jsonc in parent directories so that it is easier to add/remove packages if current directory is some subdirectory.

What do you think about setting the CWD to commands and behavior that depend on that like mountPaths or even trying to look for the on the fly ts transpilation?
I think this one works great for add/remove but I'm not sure if this also could help users to shoot themselves in the foot when running perla serve/build in a child path?

Oh, yeah, you are right. Didn't think about it.
I changed the working directory for build and serve. I hope other commands are OK.
Please take a look.


MatGL

Trying to update CAMD to use more recent software, main changes are:

Upgrading m3gnet implementation to matgl
Removing unsupported GPy in favor of sklearn implementation of GP for multi-fidelity.
Dependency resolution

Actually for now we're just going to change some things to try to make tests pass - retraining with matgl is a little more complicated than I anticipated.


extra resource

https://faculty.washington.edu/crowther/Misc/Songs/Science-Groove/Now/
ht Basile and Eddy

and youtube: https://www.youtube.com/watch?v=uu7Ph25EhLQ


bananiumWall node in spawned meat wall

Build a meat wall.
Voila, a complete flesh and fresh wall. Yuck.
Deconstruct it. You get meat. Yuck!
Spawn a meat wall with admin powers.
Voila, a complete flesh and fresh wall. Yuck.
Deconstruct it. You get bananium. Yum!
Spawned Meat Walls apparently have "bananiumWall" node in Construction component.
Should be easy to fix.

Should be fixed now.


AttachToAvatar doesn't get replaced by Transform

In theory, an entity can only have a AttachToAvatar component or a Transform component
but in practice, it is possible to have both, and it has unexpected results
See this example scene:
https://github.com/decentraland-scenes/beer-dispenser/tree/attach-to-player
in beerGlass.ts, when putting down a glass (line 177), I should in theory just need to do this, and that should replace the AttachToAvatar too
 this.addComponentOrReplace(
      new Transform({
        position: placePosition,
        rotation: Quaternion.Zero(),
      })
    )

But if I just do that, the entity remains attached to the other player, just shifted to the transform position
I need to also do
  if (this.hasComponent(AttachToAvatar)) {
      this.removeComponent(AttachToAvatar)
    }

renderer: https://github.com/decentraland/unity-renderer/pull/1730


updating report user link

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] All the files I changed are in the same world language, for example: only English changes, or only Chinese changes, etc.

Closes #38919

updated "Report This User" text to "Flag This User's Account for Abuse"
updated mailto forwarding link from<EMAIL_ADDRESS>to<EMAIL_ADDRESS>

Thanks for the PR. Please fix the linting errors. Details are available in our guidelines for contributing

Getting closer, you would need to update the tests as well.

@raisedadead thank you, apologies for submitting before confirming all tests.


3.2 Issue. The seconds to skip the ad locks in 5 and the video freeze too. (I am using Brave)

Script version
What version is the script on eg 2.9 , 3.1 ect
Describe the bug
A clear and concise description of what the bug is.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots or a video to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Check out 3.3, This should now be fixed.
(Closed as you did not fill out the issues template and a duplicate issue)


Ruff CI and external code

Issue
The ruff CI check fails when I copy/paste the replacement cycling functional test into our scenarios folder.
Cause
Functional tests written by external authors do not necessarily conform to ruff's linting standards, and our CI won't pass unless ruff is happy.
Possible solutions

Run ruff against other people's functional tests, altering their formatting to make ruff happy (current solution)
Add the scenarios folder to ruff's exception list
Create an external folder within scenarios to hold external scenarios, and add external to ruff's exception list

Id argue against 1 unless we are supplying an automatic formatter for people. Seems like it would just discourage people from writing scenarios and I don't see a lot of value anyways in ensuring scenarios are well formatted? 3 seems nice, or even just 2 for simplicity.

I propose the simplicity option here: https://github.com/bitcoin-dev-project/warnet/pull/359
We currently have a single folder, and I figure keeping it simple for now will give us the opportunity to create more complex folder structures as specific needs arise.


Add tests and custom interval for entity component

Realized we had no tests for the entity component. This PR adds them.
Now that we have guaranteed behavior, I might add in some interval stories that have been lingering around.

Now that we have tests it was easy to add support for custom intervals. This will allow platforms to define a SCAN_INTERVAL = 10 to have it be scanned every 10 seconds. Currently does not go over a minute.
Also allows overriding a platform specific option by adding scan_interval to your config:
light:
  platform: hue
  scan_interval: 10


Installation does not support the 'fish' shell

[x] I am on the latest Poetry version.

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

[x] If an exception occurs when executing a command, I executed it again in debug mode (-vvv option).

OS version and name: Linux Mint (as Ubuntu 16.04)

Poetry version: 0.12.4

Link of a Gist with the contents of your pyproject.toml file: N/A

Issue
Currently, the install script does not correctly detect and configure the fish shell. On my distribution, the correct thing to do would be to add the following line to ~/.config/fish/conf.d/poetry.fish (which is a fairly common idiom):
set PATH ~/.poetry/bin $PATH

Note that there is no = or :, and ~ is considered idiomatic (although $HOME works as well, I believe... this could need testing.)
Detection can be done via inspection of $SHELL which should generally be set to /usr/bin/fish but certainly should have basename $SHELL as fish.
Happy to submit a PR if you'd like one, a bit too busy to do that as part of the report but I can do it later if you're interested.
Thanks!

I forgot to add - it is common to tell fish users to run exec fish to pick up the new changes, rather than sourcing the config file. I think there's also a user signal to cause fish to reload, but I might be mis-remembering that.

Hey @eblume thanks for your input! Not sure if you'd still like to open a PR, but if you do please do so :) otherwise, I'll pick this up in the next few days.

I submitted pull request #1536, adding support for installing (and uninstalling) Poetry in Fish shell environments. Rather than writing/deleting ~/.config/fish/conf.d/poetry.fish and telling users to manually exec fish, modifying the $fish_user_paths universal variable allows for instant $PATH changes for current and future Fish shell sessions.
Installing Poetry should now be much easier for Fish shell users, allowing them to invoke poetry immediately after installing — without having to manually copy+paste any post-install commands. :sparkles:

It looks like @justinmayer nailed it. Sorry, I was offline when this came through, but Justin's approach will clearly be superior and is idiomatic in fish so it all worked out for the best anyway :)
Purely for the record, you can find my solution here, as part of an ansible repository: https://github.com/eblume/envelop/blob/master/roles/common/templates/000-env.fish.j2#L33
But as mentioned above, the other approach is much more robust.

Many thanks for the endorsement, Erich. I spent a good deal of time on this PR in an effort to implement an elegant solution. I initially ran into some difficulty invoking fish from Python, but @ridiculousfish was kind enough to guide me to the correct subprocess invocation.
@stephsamson: Have you had a moment to review this pull request? I only ask because I think Poetry's 1.0 release is near, and it would be nice if it could include Fish support before it ships. 😁


Correct links to Jenkins

Hi @bransorem, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

Duplicate of #68


Installing SendGrid-PHP using Composer -- Issues installing and using this API

Issue Summary
I was directed here after working with James, one of the SendGrid Support Techs.
I am trying to install the current version of the SendGrid PHP API, and have made the necessary changes to my composer.json file as directed in your instructions that are here in this site, specifically:
"require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.8.*",
    "doctrine/orm": "^2.4.8",
    "doctrine/doctrine-bundle": "~1.4",
    "symfony/swiftmailer-bundle": "~2.3",
    "symfony/monolog-bundle": "~2.4",
    "sensio/distribution-bundle": "~5.0",
    "sensio/framework-extra-bundle": "^3.0.2",
    "incenteev/composer-parameter-handler": "~2.0",
    "google/recaptcha": "~1.1",
    **"sendgrid/sendgrid": "~5.5"**
},

I'm using a modified version of your Hello Email script, called testemail8.php, where I've changed the $from and $to variables to have the values I need in order to actually get an email in my personal email.  I have a SendGrid API key from when I initially tried to use the SendGrid Web-API version 5.1 after joining SendGrid.
However, when I run my version of the Hello Email script I get a warning and an error:
Warning: require(vendor/autoload.php): failed to open stream: No such file or directory in /var/www/vhosts/symfony2/web/testemail8.php on line 3
Fatal error: require(): Failed opening required 'vendor/autoload.php' (
testemail8.TXT) in /var/www/vhosts/symfony2/web/testemail8.php on line 3
Line three of my testemail8.php script is:
require 'vendor/autoload.php';
testemail8.TXT
Steps to Reproduce

Follow the installation instructions listed at this site (https://github.com/sendgrid/sendgrid-php),
including the modification of the composer.json file, the creation of the sendgrid.env file, and the creation of a test script called testemail8.php that is based on the example script on this site.

Run the testemail8.php script in the current version of Chrome.

Get the error and warning noted above.

 & "What do you expect to happen instead?
":
The instructions provided for the installation and testing do not appear to actually download and install the API package, evidenced by the messages received when running the require statement in my testemail8.php script.

Technical details:

sendgrid-php I assume its version 5.5, from the line in the composer.json file.
PHP Version: 5.6.3

Hello @howardb3115,
Did you happen to run composer install?
I'm guessing vendor/autoload.php does not exist in your project. When you run composer install it will exist.
With Best Regards,
Elmer

Also, note that you may be trying to load the file from a location where the path isn't set.
That would mean the path "vendor/autoload.php" may be taken literal, and your test file cannot see it. If you're running a symfony project that may mean you're a level higher in like "web" for example, and its looking for "vendor/autoload.php" in "web".
I'm sure you'll find the solution now that you're here.

Thank you Elmer and CasyW,
Yes, I did run composer install, but only digging into the github php-HTTP-Client, which I have not installed, but vendor/autoload.php existed before running this command.
However, the result of running composer install is that it also removed a bunch of database setting from my parameters.yml file.  I was lucky because I had a before version of the file and was able to put back in the database settings, but I also got this message:
Some parameters are missing. Please provide them.
I have no idea what parameters are missing.
When I compare the 'before' and 'after' versions, I see that the changes were that the setting for sendmail were removed:
mailer_transport:        sendmail
mailer_transport:        smtp
mailer_host:             rs42020.mailgun.org
mailer_user:             postmaster
mailer_password:         <password>

But as you can see these were the settings for MailGun, which I'm no longer using, but nothing was put in to replace these entries for SendGrid.
Here is the full composer install output:
php ../composer/composer.phar install
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Nothing to install or update
Generating autoload files

Incenteev\ParameterHandler\ScriptHandler::buildParameters
Updating the "app/config/parameters.yml" file
Some parameters are missing. Please provide them.
*** End of Output ***

CaseyW. I'm not understanding your comment, but it seems like you're saying that I'm running the testemail8.php in the wrong directory.  I am running it from the web directory and vendor/autoload.php does exist, where vendor is in the parent directory of web.  This doesn't seem to be a problem for the web-application that I'm developing, and in which SendGrid will be used after it is installed and running.
By the way, if composer install is needed, then it might be a good idea to also indicate that in the installation instructions.
Thanks again,
Ron Brown

Hello @howardb3115,
Since you are using the Web API directly, you do not need to setup the mailer_transport settings. If you wish to use our SMTP Relay instead of the Web API, you can find the settings here.
Based on the output above, it looks like you need to run:
php ../composer/composer.phar update

Something else to try:
Replace require 'vendor/autoload.php'; with require '[full path to]/vendor/autoload.php';
That's great feedback on the composer install step. Right now, we simply link to the Composer web page here with the assumption that the user will be familiar with installation via composer. Would you suggest that we include the Composer setup steps in that section as well?
With Best Regards,
Elmer

Elmer,
Thank you for that information.  I believe that I want to use the Web API directly, because this will give me access to all of the SendGrid features, including the eventual use of templates for mass-mailings of a newletter to our suscribers.
After running the php ../composer/composer.phar install command and having it mess up the database settings in my parameters.yml file, I'm a bit nervous about what other damage it might have happened, but since I have a backup of my system from before doing the 'composer install', I am running the 'composer update' (php ../composer/composer.phar update) as you recommended.
As to the require '[full path to]/vendor/autoload.php' - why wouldn't the require 'vendor.autoload.php' work?  It seems to work properly when I use it in the web-app that I'm developing?  The app_dev.php file that 'kicks-off' my Symfony2 web-app is in the web directory -- the same directory as the testemail7.php script  I know that the require 'vendor.autoload.php' works for my web-app, because after running the 'composer install', yesterday, and having it remove some of the database settings from my parameters.yml file, my web-app gave me a ton of errors that went away after I manually pasted them back in.
As to what you might do concerning using compass instructions,  Yes, because if I should run the 'composer install' after modifying my composer.json file, then instead of assuming that we all know that,  Actually, I thought that the 'require' statement automatically resolved the download and installation, because the error indicated that there was a streaming failure, which I took to mean that the download failed for some reason, a NOOBIE error on my part.  For all us NOOBIES, having the 'composer install' as an explicit step in the instructions and also in the SendGrid quick set up guide, would be helpful.  Also, your point about adding a link to using Composer would be helpful, too, something like 'For additional information about Composer, please see .'.
The instructions also say that the API can be manually installed by downloading the zip file and 'installing' it, but it doesn't say how to 'install' it, nor does the readme.md file in the archive.  If there is something that needs to be done after downloading the archive and extracting the contents then that too really shouldn't be assumed.  If the act of downloading and extracting the content is all that needs to be done, then at least to me saying 'and install' is confusing.
Finally, a small nit, but at the end of several PHP scripts, showing how to use SendGrid to send emails, I see that the closing ?> characters are omitted.  This may be acceptable, but I suggest that including them helps to indicate that the script is not missing any lines.  Besides, saving to lines for brevity isn't much of a savings. :)
Thanks again,
Ron Brown

Unfortunately, the 'composer update' died with a memory error:
php ../composer/composer.phar update
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Updating dependencies (including require-dev)
Fatal error: Allowed memory size of<PHONE_NUMBER> bytes exhausted (tried to allocate 32 bytes) in phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/Rule.php on line 57
Call Stack:
0.0082     435104   1. {main}() /var/www/vhosts/composer/composer.phar:0
0.0085     436824   2. require('phar:///var/www/vhosts/composer/composer.phar/bin/composer') /var/www/vhosts/composer/composer.phar:24
0.0908    4408944   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
0.0965    4800016   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
0.0987    4938080   5. Composer\Console\Application->doRun() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:123
0.4847   10600328   6. Symfony\Component\Console\Application->doRun() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:231
0.4850   10600824   7. Symfony\Component\Console\Application->doRunCommand() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:192
0.4851   10601400   8. Symfony\Component\Console\Command\Command->run() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:847
0.4892   10606872   9. Composer\Command\UpdateCommand->execute() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Command/Command.php:259
0.4949   11036352  10. Composer\Installer->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Command/UpdateCommand.php:174
0.4986   11181128  11. Composer\Installer->doInstall() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Installer.php:216
0.7565   12133112  12. Composer\DependencyResolver\Solver->solve() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Installer.php:461
0.7568   12143888  13. Composer\DependencyResolver\RuleSetGenerator->getRulesFor() phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/Solver.php:214
399.7393<PHONE_NUMBER>  14. Composer\DependencyResolver\RuleSetGenerator->addRulesForPackage() phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/RuleSetGenerator.php:330
402.6376<PHONE_NUMBER>  15. Composer\DependencyResolver\RuleSetGenerator->createConflictRule() phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/RuleSetGenerator.php:246
402.6376<PHONE_NUMBER>  16. Composer\DependencyResolver\Rule->__construct() phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/RuleSetGenerator.php:126
Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors.
I'm going to check that link.

Having checked the link. I ran php -d memory_limit=-1 ../composer/composer.phar update
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- sendgrid/sendgrid 5.5.1 requires php >=5.6 -> your PHP version (5.6.30) overridden by "config.platform.php" version (5.3.9) does not satisfy that requirement.
- sendgrid/sendgrid 5.5.0 requires php >=5.6 -> your PHP version (5.6.30) overridden by "config.platform.php" version (5.3.9) does not satisfy that requirement.
- Installation request for sendgrid/sendgrid ~5.5 -> satisfiable by sendgrid/sendgrid[5.5.0, 5.5.1].
You have new mail in /var/spool/mail/root
sendgrid/sendgrid 5.5.1 requires php >=5.6 -> your PHP version (5.6.30) overridden by "config.platform.php" version (5.3.9) does not satisfy that requirement.
Apparently, my version of PHP is being limitet to 5.3.9, I'll talk with my system admin about removing the  override.

My system admin said that he couldn't find the config.platform.php file talked about in the Problem 1 message, does the PHP.ini contain anything limiting the PHP version, and we only have one PHP.ini file in the system.
When I run phpinfo.php, I see that my version is 5.6.30, and nothing in the phpinfo report says anything about being downgraded to 5.3.9.
With all of this in mind, what should I do next?
I'd kind of like keeping composer rather than going to manually installing each of the packages, especially since I don't know how to do that.
Thanks,
Ron Brown

I got another memory error when I ran the 'composer update' command again (actually php -d memory_limit=-1 ../composer/composer.phar update).
The output was:
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Loading composer repositories with package information
Updating dependencies (including require-dev)

Removing symfony/polyfill-mbstring (v1.2.0)
The following exception is caused by a lack of memory or swap, or not having swap configured
Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details

PHP Warning:  proc_open(): fork failed - Cannot allocate memory in phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php on line 957
PHP Stack trace:
PHP   1. {main}() /var/www/vhosts/composer/composer.phar:0
PHP   2. require() /var/www/vhosts/composer/composer.phar:24
PHP   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
PHP   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
PHP   5. Symfony\Component\Console\Application->renderException() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:130
PHP   6. Symfony\Component\Console\Application->getTerminalWidth() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:651
PHP   7. Symfony\Component\Console\Application->getTerminalDimensions() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:718
PHP   8. Symfony\Component\Console\Application->getSttyColumns() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:757
PHP   9. proc_open() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:957
Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php on line 957
Call Stack:
0.0118     434928   1. {main}() /var/www/vhosts/composer/composer.phar:0
0.0121     436648   2. require('phar:///var/www/vhosts/composer/composer.phar/bin/composer') /var/www/vhosts/composer/composer.phar:24
0.1053    4408664   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
0.1111    4799536   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
1266.1032  347778104   5. Symfony\Component\Console\Application->renderException() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:130
1266.1146  347778592   6. Symfony\Component\Console\Application->getTerminalWidth() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:651
1266.1146  347778744   7. Symfony\Component\Console\Application->getTerminalDimensions() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:718
1266.1178  347778840   8. Symfony\Component\Console\Application->getSttyColumns() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:757
1266.1184  347780800   9. proc_open() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:957
[ErrorException]
proc_open(): fork failed - Cannot allocate memory
I'm asking my system admin to look into adding more memory, but I don't know how much to ask for.  Any idea?
Thanks again,
Ron Brown

The composer trouble shooting guide at https://getcomposer.org/doc/articles/troubleshooting.md says that one cause of not being able to run the fork operation is that there isn't any swap space configured and to test for this with the 'free -m' command.  When I did this, the result showed that there is actually swap space, but I'm guessing that it wasn't enough.  Unfortunately, the output from the 'composer update' (see the actual command in my previous comment) didn't say how much more memory or swap space was needed.  However, I'm thinking that the increase is temporary, just while the 'composer update' is running.  I've put this issue to my system admin for as resolution.
Here is the actual 'free -m' output:
          total        used        free      shared  buff/cache   available

Mem:           1834         175          76           3        1581        1450
Swap:          3071         526        2545
You have new mail in /var/spool/mail/root
Thanks,
Ron Brown

Hello @howardb3115,
I do not know enough about your application to suggest how much memory you need, but perhaps these resources might help:
https://github.com/composer/composer/issues/945
https://stackoverflow.com/questions/18116261/php-composer-update-cannot-allocate-memory-error-using-laravel-4
Regarding config.platform.php, perhaps this may be the issue? https://stackoverflow.com/questions/35538071/symfony2-composer-your-php-version-5-6-18-overriden-by-config-platform-php
With Best Regards,
Elmer

Hello,
After spending two days trying to get 'composer update' and 'composer install' to complete successfully, trying different options such as -d memory_limit=-1 and -d memory_limit=2G, I am no longer getting the fork error, but now getting a kill suicide.
By the way running 'composer update' created a lot of temp files and after several attempts, filled up almost all of my server's hard drive, which had over 15GB of free space!  My system administrator deleted all of these before running the last 'composer update' attempt, which also failed with a kill suicide.
Since composer manages all of the other packages fine, except SendGrid, is there a way to just tell composer to install the SendGrid php api package without going through all of the other already working packages?
If not then ...
Would someone please give me the complete SendGrid php api manual installation instructions.  That is exactly what I need to do after I do after downloading the package:  do I unzip the file, should I put the unzipped directory in my Symfony2 vendors directory, what command do I need to run from the command line.  So far all I've seen is download the file and install it -- no details on how to do that.
Is there any problem letting composer continue to manage the already installed packages other than SendGrid, and have SendGrid as the only manually installed package?
Thank you,
Ron Brown

Hello @howardb3115,
To re-install SendGrid using composer:
First, remove the SendGrid dependency.
Then:
composer require sendgrid/sendgrid ~5.5

With Best Regards,
Elmer

Sorry, what about the updates and installs that have been blowing up?
Are you saying that I should I remove the sendgrid/sendgrid ~5.5 from the composer.json file and then run the 'composer require sendrid/sendgrid ~5.5' command from the command line?
Thank you,
Ron Brown

Hello @howardb3115,
I'm not sure what is happening with the updates and installs blowing up. I have not encountered that issue before, nor have I seen it reported here.
After researching the issue, I came to the conclusion, your best bet is to re-install. That seems to have worked for others having install issues with Symfony 2.
My suggestion is to follow the steps outlined in my previous comment. I'm not familiar with Symfony 2, so I pointed you to a uninstall article that appears to make sense and was selected as a correct answer on Stack Overflow. The same is true for the installation, that advice was the result of researching what worked for others.
With Best Regards,
Elmer

Thank you Elmer for getting back to me.
I removed the lines from my sendgrid entries in the composer.json and parameters.yml files.  The config.yml file doesn't make reference to the sendgrid entries that were removed from the other files.
Then I ran the php ../composer/composer.phar require sendgrid/sendgrid ~5.5 command from the command line as root and got the following:
**You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Fatal error: Allowed memory size of<PHONE_NUMBER> bytes exhausted (tried to allocate 72 bytes) in phar:///var/www/vhosts/composer/composer.phar/src/Composer/DependencyResolver/Rule.php on line 60
Call Stack: ..
Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors..**
So I ran: php -d memory_limit=2G ../composer/composer.phar require sendgrid/sendgrid ~5.5 and got this output:
**You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Installation failed, reverting ./composer.json to its original content.
The disk hosting /root/.composer is full, this may be the cause of the following exception
Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php on line 957
Call Stack:
0.0136     435480   1. {main}() /var/www/vhosts/composer/composer.phar:0
0.0138     437200   2. require('phar:///var/www/vhosts/composer/composer.phar/bin/composer') /var/www/vhosts/composer/composer.phar:24
0.1116    4409344   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
0.1179    4800344   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
1053.3390  349925288   5. Symfony\Component\Console\Application->renderException() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:130
1053.3488  349925840   6. Symfony\Component\Console\Application->getTerminalWidth() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:651
1053.3488  349925992   7. Symfony\Component\Console\Application->getTerminalDimensions() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:718
1053.3511  349926088   8. Symfony\Component\Console\Application->getSttyColumns() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:757
1053.3522  349928048   9. proc_open() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:957
[RuntimeException]
/var/www/vhosts/symfony2/vendor/sendgrid/php-http-client does not exist and could not be created.**
Two things stick out:
The disk hosting /root/.composer is full, this may be the cause of the following exception
and
/var/www/vhosts/symfony2/vendor/sendgrid/php-http-client does not exist and could not be created.
So I cleaned out the /root/.composer/cache directory and ran the  php -d memory_limit=2G ../composer/composer.phar require sendgrid/php-http-client ~3.7 command, but it dies due to there not being enough drive space.
**You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Writing /root/.composer/cache/repo/https---packagist.org/provider-phpdocumentor$reflection-docblock.json into cache failed after 0 of 27257 bytes written, only 0 bytes of free space available
Writing /root/.composer/cache/repo/https---packagist.org/provider-phpdocumentor$type-resolver.json into cache failed after 0 of 13654 bytes written, only 0 bytes of free space available
Writing /root/.composer/cache/repo/https---packagist.org/provider-symfony$workflow.json into cache failed after 0 of 118162 bytes written, only 0 bytes of free space available
Installation failed, reverting ./composer.json to its original content.
The disk hosting /root/.composer is full, this may be the cause of the following exception
Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php on line 957
Call Stack:
0.0110     435448   1. {main}() /var/www/vhosts/composer/composer.phar:0
0.0112     437168   2. require('phar:///var/www/vhosts/composer/composer.phar/bin/composer') /var/www/vhosts/composer/composer.phar:24
0.0958    4409056   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
0.1016    4800104   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
1576.3182  349096448   5. Symfony\Component\Console\Application->renderException() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:130
1576.3466  349097000   6. Symfony\Component\Console\Application->getTerminalWidth() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:651
1576.3466  349097152   7. Symfony\Component\Console\Application->getTerminalDimensions() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:718
1576.3477  349097248   8. Symfony\Component\Console\Application->getSttyColumns() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:757
1576.3573  349099208   9. proc_open() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:957
[RuntimeException]
/var/www/vhosts/symfony2/vendor/sendgrid/php-http-client does not exist and could not be created.**
At this point it looks like I need to manually install both the sendgrid/php-http-client and sendgrid/sendgrid unless you have any other ideas.

I found that my system's primary hard drive is showing 100% used, even though I've spent two hours deleting hundreds of files, some of which were quite large.  I'm having my system administrator look into why the space that should have been freed when the files were deleted isn't showing when I use the df command.  Perhaps when this is resolved I'll be able to run the composer commands, after all.

Hello @howardb3115,
If you do need to install without composer, you can download the files here, and then ensure your app require's SendGrid as follows:
require("path/to/sendgrid-php/sendgrid-php.php");

Thanks!
With Best Regards,
Elmer

Unfortunately, even after 18GB of diskspace were freed, I can not install the prerequisit sendgrid/php-http-client package.
**php -d memory_limit=2G ../composer/composer.phar require sendgrid/php-http-client ~3.7
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)

Installing sendgrid/php-http-client (3.7.0)
Downloading: 100%

Installation failed, reverting ./composer.json to its original content.
The following exception is caused by a lack of memory or swap, or not having swap configured
Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details
Warning: proc_open(): fork failed - Cannot allocate memory in phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php on line 957
Call Stack:
0.0159     435448   1. {main}() /var/www/vhosts/composer/composer.phar:0
0.0163     437168   2. require('phar:///var/www/vhosts/composer/composer.phar/bin/composer') /var/www/vhosts/composer/composer.phar:24
0.1181    4409056   3. Composer\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/bin/composer:43
0.1238    4800104   4. Symfony\Component\Console\Application->run() phar:///var/www/vhosts/composer/composer.phar/src/Composer/Console/Application.php:104
883.4065  349477688   5. Symfony\Component\Console\Application->renderException() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:130
883.4142  349478176   6. Symfony\Component\Console\Application->getTerminalWidth() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:651
883.4142  349478328   7. Symfony\Component\Console\Application->getTerminalDimensions() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:718
883.4155  349478424   8. Symfony\Component\Console\Application->getSttyColumns() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:757
883.4160  349480384   9. proc_open() phar:///var/www/vhosts/composer/composer.phar/vendor/symfony/console/Application.php:957
[ErrorException]
proc_open(): fork failed - Cannot allocate memory**
> If you do need to install without composer, you can download the files here, and then ensure your app require's SendGrid as follow
So I just download the sendgrid/php-http-client and sendgrid/sendgrid package, unzip them, place them anywhere I want, and reference them with their own require statements in my code at the top of the script were I have other require api statements as follows:
require("path/to/sendgrid-php/sendgrid/php-http-client.php");
require("path/to/sendgrid-php/sendgrid-php.php");
Can these api package directories go in the vendors directory with all of the other third-party packages that composer manages?
Is there documentation for either of these api packages that spells out all of the manual installation details?
Thank you,
Ron Brown

Latest update - 18GBs of drive space were freed and I disabled xdebugger, sort of, by setting the enabling options in the 15-xdebug.ini file to zeros:
xdebug.remote_enable=0
xdebug.profiler_enable=0
I say sort of because while setting these options to zeros, seems to be the normal way to disable the xdebugger, composer says that it's on.
Then I ran the 'conposer require sendgrid/sendgrid `5.5 command with a memory limit of 3 gigs:
php -d memory_limit=3G ../composer/composer.phar require sendgrid/sendgrid ~5.5
**You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Do not run Composer as root/super user! See https://getcomposer.org/root for details
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)

Installing sendgrid/php-http-client (3.7.0)
Downloading: 100%

Installing sendgrid/sendgrid (5.6.1)
Downloading: 100%

Writing lock file
Generating autoload files

Incenteev\ParameterHandler\ScriptHandler::buildParameters
Updating the "app/config/parameters.yml" file
Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache

[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "database_server_version".
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the symfony-scripts event terminated with an exception
Installation failed, reverting ./composer.json to its original content.
[RuntimeException]
An error occurred when executing the "'cache:clear --no-warmup'" command:
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "database_server_version".**

The encouraging thing is that unlike all of the other attempts to run this command, I'm seeing that the sendgrid/sendgrid-php and  sendgrid/php-http-client were both being downloaded.
The discouraging thing is that I'm now getting an error about the "database_server_version":
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "database_server_version"
The odd thing is that this is a new error and the old one about the "database_driver", which previously occurred, doesn't show any.  By the way, neither of these option values have been changed since they were created just after Symfony 2 was installed.
The other good sign is that unlike when I tried to use the 'composer install' or 'compose update' commands, even though the 'composer require ...' command dies with the "database_server_version" error, my web-application start properly!
What I still need to do is verify that the sendgrid php api is actually loaded and working when I run a script containing the require( "vendors/autoload.php" ) command.  I'll post here when I know the answer.
Thank you,
Howard Brown

Thank you for the update, I look forward to hearing the result of your next test.

Thank you for your continued support with this issue..  I was successfully able to send emails using the demo php script shown on the  tab.  Even though the 'composer require ...' command that you suggested displayed a 'non-existent parameter "database_server_version"' error, it still downloaded and installed the sendgrid/sendgrid-php api and sendgrid/php-http-client packages, which I was  then able to verify by successfully sending a test email using your demo script.
To do this I had to turn off the xdebugger.  The message about the performance impact, while true, didn't fully alert me to the additional memory and diskspace consumed by the debugger, and appeared to be needed to install these packages.  I also had to clear out the xdebugger log files that were piling-up after all of the failed composer install/update/require attempts.  And finally, the use of memory_limit=3G rather than the memory_limit=-1.
Thanks again,
Howard Brown

Thank you for taking the time to provide the final solution and having the patience to keep working with us! We appreciate your support!

You're very welcome. :)

Thanks for the examples  shown on this site's <code> tab.
I'd like to offer an alternative that solved a couple of problems that I ran into when I tried to apply pieces of your example code to my real world code where I wanted to use SendGrid to send emails out to my users to confirmation account registrations. password changes, and alerts.
Your examples ran fine when I tried them out for myself, but then I found a possible source of confusion when I integrated parts of your code into my Symfony2 web-app -- specifically, the use of namespace statement and the unqualified SendGrid classes, i.e., Mail, Email, Personalization, etc., caused compilation errors.
To get around this, I changed the namespace statement to a use statement and added the SendGrid/ qualifier before the various SendGrid classes where they were being instantiated.  I then made these same changes in a modified version of your example code, which I've attached, here.
testapi.TXT
Both Symfony 2 and PHP do allow for multiple namespaces statements within a single script, but I found that to do this made my code more complicated, so instead I just used the use statement to make my code 'see' the SendGrid items.  However, the simpler form of the use statement gave me a warning in my modified version of your example code, so I changed it to a use as statement, and that eliminated the warning.  Then I used the qualified *SendGrid* qualifiers before all of the SendGrid classes and eliminated those errors, too.
Thank again,
Howard Brown

This feedback is awesome Howard!
Would you mind putting your observations/sample code here (with a PR) under a heading "Symfony 2 Integration"?
If you do not wish to make a PR, no worries, I would go ahead and add a similar example.
With Best Regards,
Elmer

I would be happy to post my last comments and my sample code in the PR area, but I don't understand what is being asked when it wants me to compare versions.

Hi @howardb3115,
Have you created a pull request before? If not, I can guide you.

No, I haven't done that in any of the github sites.  You're help would be appreciated.
Thank you,
Howard Brown

@howardb3115,
Please complete this course and reach back out at the end and I will walk you through how to make the change step by step: https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github
With Best Regards,
Elmer


Fix an out-of-bounds read for TLS <- 1.2 cipher strings that end in a "-"

In ssl_cipher_process_rulestr(), if rule_str ended in a "-", "l" was incremented one byte past the end of the buffer.  This resulted in an out-of-bounds read when "l" is dereferenced at the end of the loop.  The trivial fix is to only increment "l" if the last byte read is not a NUL.
CLA: trivial

Confirm trivial?  I think it is but I added the label :smiley:

I am OK with CLA: trivial for this.
@paulidale should this go into 1.1.1 too? IMO yes, if it applies there.

Should this have a regression test? That test combined with ASan should provide regression coverage.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

@millert could you please change this according to the @davidben's suggestion?

@paulidale still OK?

This pull request is ready to merge

Merged to all branches (after fixing trivial conflict on 1.1.1 branch). Thank you for your contribution.


Make sure PATH includes ~/.local/bin

Checklist

[x] I've run make from the root directory to see all Dockerfiles are created successfully.
[x] I've updated the documentation if necessary.

Motivation and Context
This PR relates to https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839155, and should resolve #375 (see there for discussion).

@PiDelport when i merge this to staging, it will generate staging images here:
https://hub.docker.com/u/ccistaging
can you then try a job w/ one of those images (you can find all tags built from the commit in question here: https://github.com/CircleCI-Public/circleci-dockerfiles/commits/staging) & let us know on this PR if it actually works ?
just wanna make sure we don't do something when spinning up containers for folks' jobs that doesn't, like, overwrite PATH somehow....
thanks for your PR !!

@iynere: Ah, it looks like this is not quite enough after all: the shell only reads .profile for login shells.
# interactive:
$ rundocker ccistaging/python:3.7 sh -c 'echo $PATH'
/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

# login:
$ rundocker ccistaging/python:3.7 sh -l -c 'echo $PATH'
/home/circleci/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

(same for bash)

correcttttt @PiDelport https://circleci.com/docs/2.0/configuration-reference/#default-shell-options

@PiDelport can you submit a new PR & use Dockerfiles' ENV syntax to do this ? i thiink that should work
https://docs.docker.com/engine/reference/builder/#env

Hmm, using ENV as an override outside the container may not be that straightforward:

It overrides the container's original PATH value, which could be error-prone: different base images could make different choices and assumptions about their default system paths.
Overriding it at the Docker level isn't aware of what user inside the container things end up being executed as: we don't want /home/circleci/.local in the path when executing as root or any other account.

The standard approach above takes care of all of this: I don't think it'll be easy to go outside of that without affecting the relative neutrality that the base images should have.

@iynere: This PR combined with defaulting to a login shell seems to make things work as expected! :tada:
Successful build: dfaff69 (https://circleci.com/gh/OpenUpSA/khetha-django/159)
I think that changing the default shell values to be login shells should be the correct solution to go forward with: I don't think this is the only thing that assumes Unix login semantics for setting up the initial environment, paths, and so on.

I searched around to see what decisions other CI communities have made regarding this, and it seems that GitLab has run into this with RVM (which only activates in login shells), and changed their default shells to be login shells:

https://gitlab.com/gitlab-org/gitlab-runner/issues/86
https://gitlab.com/gitlab-org/gitlab-runner/issues/87

It looks like CircleCI has also run into this issue before too:

https://medium.com/@odedre/circle-ci-v2-react-native-project-build-release-setup-ce4ef31209d0

  # use a --login shell so our "set Ruby version" command gets picked up for later steps
  shell: /bin/bash --login -o pipefail
  steps:
    …

Should I open a new issue to propose adding --login to the default shell values?

@PiDelport lol if you want to fight that fight, i definitely support it, but i can't guarantee your success... there's not even an open-source repo you could file a PR or issue against, you'd have to just file a feature request here:
https://ideas.circleci.com
or bug folks on Discuss more
i think there are reasons we don't use a login shell by default....
i think you can set it with ENV without overriding, just append ~/.local/bin to the existing PATH variable in your ENV decalaration


Browse button looks off on FF 35.0.1 (Windows 7)

When I edit the doc, the "Browse" button looks off on FF 35.0.1 (Windows 7).

I just tested in firefox 34.0.5 and it looks to be fixed now (the button adds an ellipses) per a suggestion on  (this stackoverflow)[http://stackoverflow.com/questions/22049739/fix-for-firefox-file-input-using-bootstrap-3-1]
@ctrance could you re-test quick and close if it's working? thanks!

fixed


Extract resources before caching responses (experimental).

Currently, resources are extracted from the HTML string in response during
processing on each navigation.  To eliminate work for cache or prefetched
responses, extract the resources during parsing, which happens before the
response is cached.  For now, guard this behavior behind the
experimental-parse-extract config.
Progress on #307.

This will extract before caching correct?
I don't see any issues with the response processing running on a post-extraction object, but I think you will need to expand the SingleResponse object definition. Right now it only considers head and foot as strings.

Yes, this will extract before caching.
I'd like to make the typedef changes in separate PR to isolate their impact, as they will affect all response-handling code.

LGTM

The follow-up PR is now at #311


Change repository structure

Change GitHub repository structure to merge Web app and Mobile App into one repository.

@minhtridn2001  anh xem coi đúng chưa

Done!


Issues with rolling back resources

Describe the bug

Steps to reproduce
Issue 1: Rollback a resource.
Issue 2: Select a update type run to rollback
Result

Issue 1: Failed to rollback. The parameter is incorrect.

Issue 2: Unable to rollback a update type run, missing Rollback button.

Expected behavior

Environment

Walrus version: main 30ceb5ac9dcaade04505b64a3f6e6ef3bc1c80b2
UI version: dev-1305100

Additional context
Add any other context about the problem here.

Environment

Walrus version: main 7bb79389ab0436969f4c4214e38918ee6c6e9070
UI version: dev-1be55ba

Test Result: pass


python3Packages.awesomeversion: 21.2.2 -> 21.2.3

Motivation for this change
Update to latest upstream release 21.2.3
Change log: https://github.com/ludeeus/awesomeversion/releases/tag/21.2.3
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] 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 114243 run on x86_64-linux 1

1 package failed to build:

home-assistant

4 packages built:

python38Packages.awesomeversion
python38Packages.pyhaversion
python39Packages.awesomeversion
python39Packages.pyhaversion

Home Assistant build failure will be fixed with https://github.com/home-assistant/core/pull/46989

Result of nixpkgs-review pr 114243 at bc950813 run on aarch64-linux 1

1 package failed to build:

home-assistant

4 packages built:

python38Packages.awesomeversion
python38Packages.pyhaversion
python39Packages.awesomeversion
python39Packages.pyhaversion

@fabaff can you fix home assistant in the pr with a substituteainPlace?

Result of nixpkgs-review pr 114243 run on x86_64-linux 1

5 packages built:

home-assistant
python38Packages.awesomeversion
python38Packages.pyhaversion
python39Packages.awesomeversion
python39Packages.pyhaversion


TC update for Level, RK and SC updates

Level 1, 2 and 3 - RK update on SC and health update in the app and SM approval (temp on relay or direct scan)

WI should add a new contact when a new Keeper is added. As this is Add F&F

Verified this issue on dev app v2.0(351)


Chore: fix or close dependancy PRs

https://github.com/yearn/web-lib/pull/298
https://github.com/yearn/web-lib/pull/295
https://github.com/yearn/web-lib/pull/293
https://github.com/yearn/web-lib/pull/292
https://github.com/yearn/web-lib/pull/290

Closing as we'll remove the docs and playground packages with https://github.com/yearn/web-lib/pull/300
Once that's done all these dependabot can be closed, there's only one left which we can address later on

ok thanks


Sandbox skewer processes

First step is done: skewer has been divided in multiple processes

one master process is responsible to centralize logs and to bind sockets
one main child process is responsible to run the store and get logs from "plugins"
some "plugins" processes : TCP listen, UDP listen, RELP listen, fetch audit logs, fetch journald logs, parse configuration

The children now run in a namespace sandbox under linux.

The processes now run under seccomp profiles.

Also uses pledge on openbsd now.

TODO: sandbox on OSX


Add support for binaryTarget that are .artifactbundle

Today, all binaryTarget targets are treated as xcframeworks. SPM supports xcframeworks and artifactbundle.
https://github.com/apple/swift-package-manager/blob/main/Sources/PackageModel/Target.swift#L681-L682

The messagekit_example has two examples. One is for swiftformat and the other is for swiftlint.


fix(placeholder): add selector placeholder

add a selector placeholder for the Stack Recommendations widget

[test]

@mindreeper2420 snapshot fabric8-ui is deployed and available for testing at https://fabric8-ui-fabric8-ui-pr-1602-fabric8-ui.int.rdu2c.fabric8.io

[test]

@joshuawilson @mindreeper2420 Looks fine to me with recommendations

:tada: This issue has been resolved in version 4.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Explain why intercept is not needed

Actually fixes  https://github.com/arviz-devs/bayesian-model-evaluation/issues/30

Also fixes https://github.com/arviz-devs/bayesian-model-evaluation/issues/20


Allow for US style date?

Would it be possible to have an option to switch from DD/MM to MM/DD for us hopeless Americans?

Good Idea, will add this.

Added date format option in V1.1.1, which is released via github and out for approval at elgato.


Change exporting

This adjusts the loader, on all platforms, to only export core functions, which is what I think we say in the docs we do. (aside from static linking, possibly only on windows, not sure)
This did require some changes to hello_xr, but I think only in accordance with the spec.
Not sure if we wanted to mark some of the graphics binding functions as exported too.
The other thing I did was "fix" the XRAPI_ATTR on Windows: it had gotten a declspec(dllexport) at some point, which I didn't find anywhere in Vulkan and I think was a mis-use of that attribute. We already had LOADER_EXPORT, it was just being inconsistently used and configured.
Have only tried this on Linux.
Fixes #45

Why not export everything like it was? This sounds like a doc bug to me :-). The app is supposed to embed the loader with it, so exporting makes everything simpler. I could see why Vulkan didn't export extensions because each driver on the system might have different extensions and then you'd get linker errors, but that's avoided with OpenXR's. I really think we should keep exporting everything.

That's a good point...
Do we maybe need to bring this to the group? Since there's at least some examples that already use get proc addr for their extension code, don't remember if there's anything in the actual spec itself that says this.
If we do go that route, we can just modify these changes since we still probably don't want to export essentially loader-internal symbols 😀
Tagging in @wallbraker and @haagch for Linux perspective

Agreed we should definitely not export internal stuff

I thought I had heard that the plan on Linux was to include the loader on the system rather than embed with the application. If so, that seems pretty concerning to me because once the various platforms diverge then decisions become a lot harder because there might not be a clear correct decision. I hope I misunderstood and Linux OpenXR apps include the loader like on the other platforms like Windows and Android.

I thought that Android had a system wide loader too. It has to do with distributions - on Linux we do actually have a reasonable, centralized control so people don't step on each others libraries (distro package managers, etc). That, combined with the very rocky state of the loader on Linux early-on led us to switch the default to dynamic linking, to be able to fix breakages after shipping. This could be re-discussed, but that's probably a different issue than this one.

Not sure I follow - what are the other things to export, that aren't loader internal and aren't API?
We can't export any extension symbols, so I can't think of what else there is?  Also, it appears to me that these changes to hello_xr are the correct way to find/call an extension entry point.

"LOADER_EXPORT" seems exposing too many functions, see image below
Following function shouldn't be exported for openxr_loader.dll on windows platform, IMHO.

BTW: I also agree with Bryce that we should exporting all XR functions in openxr headers, including all extensions that's in the spec.   Application shouldn't need to go through extra code to consume extensions if they are using the latest loader from this repo.

This is what I don't understand. Extensions are always optional, and at loader compile time there's no way to know which extensions will be available at run time (regardless whether KHR, EXT, or vendor extension). I don't see how the loader can export any extension-defined symbol.
Agreed the LoaderXr* functions have to go.

The loader code is generated from the same xr.xml that generated the corresponding openxr.h.   Therefore at loader compile time, it will support the same set of extensions in the openxr.h  They are always in sync.
It's by design loader exposes "optional" extensions.  If the runtime indicate any extension is not supported, it is invalid for app to call into those unsupported functions.

IMO it's risky to expose anything not guaranteed to exist on the platform.  Vulkan's loader exposes only core API and a constrained set of guaranteed-present extensions (e.g. WSI stuff in the Win DLL). Even that's a frequent problem, because people forget to enable the extension they need to use and the linker has no idea. Having entry points in the loader that work perfectly for developer A using runtime A, but later then crash with runtime B because he forget to check, is inviting pain.
It's a very crisp and logical division that you can call core APIs directly, but for any extension (which you already have to query for and enable) you also have to GetInstanceProcAddr for it's entry points. There's little to gain by skipping the GIPA for (some) extensions, and a lot of potential downside (IMO).

OpenXR loader is designed differently than Vulkan.  The loader is not global on the system.  It is included with each application.    Therefore, the loader will not expose anything more than the corresponding openxr.h header already exposed, and vise versa.   As long as the app is compiled with openxr header, they are taken care of by the loader.
Also an OpenXR conformed runtime must not enable any extension unless it's explicitly enabled by the application in xrCreateInstance.  As long as the application is picking the extension name from the OpenXR.h, the loader must support this extension correctly.
Well if application is using an extension name outside of the OpenXR.h header, the loader cannot help them and they have to use GetInstanceProcAddr themselves and by passing loader logics.   But at least the behavior is consistent.

Right now, in both branches (this and #100) the loader checks to make sure you've enabled an extension before passing the call to extension-created functions thru to the runtime. We've discussed removing this check from the loader, as it seems like "too much validation" in the loader vs. the validation layer, but it may be useful if we go with this more drastic change.

Agreed and approved.
can i assume we will have a separate change to fix these?

Yeah, presumably - I thought I had already gotten rid of those being exported. Is that in the static or dynamic library?

I'm going to port this back to GitLab first to get our overall CI running on it, since this will probably mean we need some fixes to the sample code, etc.

This PR is approved and ready to push. I'm going to close issue #45 as resolved.


make docs failing in Travis

Failing doctests? in dev builds
https://travis-ci.org/OpenTrons/opentrons/jobs/261177716#L1119
tube-rack-.75ml

-------------

/home/travis/build/OpenTrons/opentrons/api/docs/source/containers.rst:374: ERROR: Document or section may not begin with a transition.

/home/travis/build/OpenTrons/opentrons/api/docs/source/examples.rst:222: ERROR: Document may not end with a transition.

/home/travis/build/OpenTrons/opentrons/api/docs/source/modules.rst:7: ERROR: Document or section may not begin with a transition.

make[1]: *** [doctest] Error 1

make: *** [docs] Error 2

The command "if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then (cd api && make docs > /dev/null && cd ..) fi;

" exited with 2.

@Kadee80 @IanLondon can you reference a commit that fixes that here, and/or reference this issue in PR?

We investigated today. Docs build but the template update was never merged in. I closed the old pr (from June) will make a pr in the am with updated doc templates. Will branch off master as we discussed.

Accidentally closed. Will keep open till resolved


Website is not displaying correctly.

Hi there,
I'm not sure if it's just me or someone else also encountering the website displaying problem, please help take a look since it's preventing smooth reading of the documents. Thanks~

Hi,
Can you send the link to the page you are viewing? I checked the documentation page of the gem5 website and the footer is being rendered differently for me. I have attached a screenshot of how it looks on my system.

Hi @Harshil2107 ,
The link is https://www.gem5.org , and I tried both Chrome and Edge, both had the same rendering issue.
Thanks.

I looked on my end, The website looks the same as the screenshot I sent above. I tried different aspect ratios and window sizes, but I couldn't reproduce the rendering issue you were having.
Are there any other details that you can give to help me reproduce the issue?
Thanks.

Hi @Harshil2107 ,
After fixed the DNS of company, the web is rendering OK.
Thanks and closing the ticket.


Enforce removal of files by default

The current behavior of git-vendor leaves excess files that have been removed under the guise of "the developer knows what they need to do to sync changes"
This is not the case, and destructive actions are in theory - versioned in the repository history when going from VCS => VCS.
Make this an overrideable parameter, but enforce deletion by default.

I'm going to move the actual implementation to an atomic update by wiping everything but the .bzr directory from the target -d dir, and then copy over the changes. This should resolve issues with artifacting, and type-changes of files.


Create GitHub Action

Homework

[X] I took the time to write a good, descriptive issue title
[X] I read nativefier --help and API.md, no existing option fits my needs.
[X] I checked CATALOG.md for community suggestions & workarounds.
[X] I searched existing issues, open & closed. Yes, my feature request is new.
[X] I'm running the latest version. Yes, the feature I'm requesting isn't in it.

Problem statement
This feature would allow you to add Nativefier into the pipeline cycle and produce packages for your repository. Pipelines allow you to build on Linux and Windows. So I assume this would work. Perhaps it would be limited to Linux packages. I know NPM can run on GitHub Actions. This would be a simple config file/recipe that users could add to their deployment process.
Motivation & context
I love Natiefier, but it would greatly improve my CI/CD process if I could include it in my pipeline as a process. I think it would allow many users to add usable packages to their repository, making the app more accessible for some.

If you mean to automatically package Websites:
As nativefier files are usually 250-300mb big, this doesn't make too much sence. However I have an repo here that gets the size down to 90mb by double zipping it. Feel free to fork and modify the config.json, should be self explaining.
https://github.com/BastelPichi/nativefier-automatic-spotify/
The executables built work.
Else I spent two hours lol
Hope this is helpful!

@BastelPichi so your workflow can be adapted so that when I push a new release of my Flask app, it will read the config.json file and create builds based on your action parameters?

It would be convenient, but really it's not that hard. You just tell Actions to install and then run Nativefier. That's it.
Anyway, here's my action that automatically builds and 7zips everything on all platforms. The Linux 7z is only 56 mb. You just need to set up an npm run script, look at my package.json.
https://github.com/Randomblock1/messages4desktop/blob/master/.github/workflows/build.yml

Looks like you got the help you needed 🙂. With that, closing.


Error 400

Does not seem to work anymore. I keep getting Error 400.

Thanks @michael-milette, I'll take a look soon and let you know

Hi @ncamaa ,
I just re-installed the extension and configured the settings, as per your documentation. However, I am still getting the error. I am developing in PHP. Here are some screenshots:
If I use the Create documentation option:

If I use the Add Comments option:

In both cases, once I get the error, it completely deletes the selected function and replaces it all with the following line:
// problem generating documentation

If I am not paying attention and save, my code could be gone forever 😥
It took me a while but I finally figured out what works and what does not.
Here is an example of a function where your extension actually works fine:
function gettime($txt) {
    return $txt . time();
}

However, your extension deletes my code and generates the error when I use it on the following code:
function gettime($glossaryData) {
    return $glossaryData . time();
}

Looks like it could not figure out what data type the variable $glossaryData was and decided that nobody should have that code - including me! 😄
Hope you find this helpful.
Best regards,
Michael

Thanks for sharing. I'll look into it and get back to you 👍

@michael-milette
Hey,
Thanks a lot for taking the time to outline the issues you're encountering with our extension. We really appreciate the detailed feedback and the effort you've put into troubleshooting.
After looking into the matter on our end, we couldn't replicate the error you've described when working with PHP. Our extension was mainly tested with JavaScript and TypeScript, so there might be some quirks when it comes to PHP.
Just a heads-up, using a free OpenAI API key might be causing these errors you're encountering. I have no affiliation with OpenAI; it's just that the extension seems to work best when paired with a premium OpenAI account. So, you might get some errors working with the free version API.
Since this is an open-source, non-profit project, one of the best ways to help would be to fork the repository and submit a pull request with a fix if you're comfortable doing so. This would not only solve your issue but also benefit others who might be facing the same problem.
Cheers, and thanks again for helping us improve the extension.
Best regards,
Nadav

After looking into the matter on our end, we couldn't replicate the error you've described when working with PHP. Our extension was mainly tested with JavaScript and TypeScript, so there might be some quirks when it comes to PHP.

Hi @ncamaa ,
From what I can see from your screenshot,  you are testing using the scenario that I said works. Please try the example that I said does not work. It is the one where the function parameter is $glossaryData.
I tried it with both a free and a paid OpenAI account.
Best regards,
Michael

Hey Michael,
Thanks for pointing that out. I went back and tested specifically with the function that uses $glossaryData as a parameter. I've also attached some screenshots for reference.
Unfortunately, I still couldn't replicate the issue you're facing. This is puzzling, to say the least.

If you're up for it, feel free to fork the repo and dig into the code. Any pull requests with fixes are more than welcome!
Cheers,
Nadav


chore: update models in kotlin client generator

Description:
Adds solution when OAS model generation doesn't handle oneOf well
Checklist:

[ ] My PR follows the contribution guidelines of this project
[ ] My PR is free of third-party dependencies that don't comply with the Allowlist
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have checked the PR title to follow the conventional commit specification

@amagyar-iohk Are we still going to merge this one?


Appending/Adding Additional HTML to a HTML Table Row

I'm trying to figure out a way to append additional rows to a html table without having to keep reloading the page without using 'load_html' to keep reloading the document and slowing down the browser while adding new table row data.
I see that there is the option to add additional html to the document without reloading it by using 'add_html', but how would I keep appending new rows to a html table?
For example, here's what my table rows look like:

		      #
Heading 1
Heading 2
Heading 3

		      1	DATA 1	DATA 1	DATA 1

		****

Is there a way to quickly append another table row without constantly reloading the whole document? Is there a way just to manipulate the '
' element so that I don't have to keep reloading the whole document?
I would like to click a Tkinter button, then it would append another row to the html table. Just trying to figure out which way it would be best to do so. I've tried replacing a 'html' variable where it says '', but it seems as though I'd have to keep reloading the document in order to replace the html variable that I'm using to load my html.
I'd appreciate the ideas. Thanks.

Hi!
Yes, there are many ways to get that done. I would use add_html to add a new table with the rows you want to add. I would then use html.search to get the two tables, html.get_node_children and html.insert_node to move the contents of the new table into the main table, and html.delete_node to delete the empty table. Here's an example:
import tkinter as tk
from tkinterweb import HtmlFrame

root = tk.Tk()
frame = HtmlFrame(root, messages_enabled=False)
frame.load_html("""

            #
Heading 1
Heading 2
Heading 3

            1	DATA 1	DATA 1	DATA 1

""")

frame.pack(expand=True, fill="both")

frame.add_html("""

  1	DATA 1	DATA 1	DATA 1

  1	DATA 1	DATA 1	DATA 1

  1	DATA 1	DATA 1	DATA 1

""")
master_table = frame.html.search("#master-table")
new_table = frame.html.search("#new-table")
new_rows = frame.html.get_node_children(new_table)

frame.html.insert_node(master_table, new_rows)
frame.html.delete_node(new_table)

root.mainloop()

Make sure that you are using the latest version of TkinterWeb.
Hope this helps!

Thank you for your support Anderoo.
Also, this leads me to a couple of new questions:

After testing your code, I keep getting the error message:
'self.frame.html.insert_node(self.master_table, self.new_rows)
AttributeError: 'TkinterWeb' object has no attribute 'insert_node''

Is this the proper way to insert a new node or was there some mistake in your example?

Say that I need to build a table that will have well over 1,000+ rows, is there a way to ensure the quickest loading? What do you think would ensure that I'd be able to load well over 1,000+ rows into a table without having any lag??? I will be using mult-threading to populate the table with new rows, but would still like to ensure optimal performance while do so.

Thanks again for your support!

For the first question, you'll need to update TkinterWeb (eg. pip install --upgrade tkinterweb). I added the insert_node and delete_node functions earlier today to make it easier to access some underlying functions.
For the second question, I just tried generating a couple thousand rows and adding it to the table within a thread, and I don't experience any lag. I would recommend that you make sure that you are generating your rows within a thread and see what happens. If performance becomes an issue, just let me know and we can work it out!

I have tried it your way with the child nodes and deleting the new table, but it still lags after adding anywhere from 5,000 - 10,000 rows.
Try this code and you will see what I mean when you try to resize/drag the window or when hovering hovering over the table rows:
`       self.frame = HtmlFrame(self, messages_enabled=False)
    self.css = """
    table{position:relative; margin:auto; border:2px solid black; width:98%; margin-top:20px; margin-bottom:20px;}
    th{border-bottom:1px solid black; background-color:#333333; color:white;}
    tr:hover{background-color:gold; color:black; cursor:pointer;}
    td{border:1px solid black;}
    """

    self.html = """

              #
Heading 1
Heading 2
Heading 3

"""

    self.frame.load_html(self.html)

    self.frame.add_css(self.css)
    self.frame.pack(expand=True, fill="both", pady=(0, 20))

    self.b = Button(self, text='START', bg='green', fg='white', cursor='hand2', command=self.add_rows)
    self.b.pack(pady=(0, 20))

def add_rows(self):

    for i in range(1, 10001):
        self.new_html = """

                  """ + str(i) + """	 """ + str(i) + """	 """ + str(i) + """	 """ + str(i) + """

              """

        self.html = self.html.replace('', self.new_html)

    self.frame.load_html('')
    self.frame.load_html(self.html)
    self.frame.add_css(self.css)`

Hi! I see what you mean. I tried stripping TkinterWeb down to the bare HTML engine it runs on and I still see the lagging. I don't think there is anything I can do about this, but I will still certainly keep an eye out for ideas. Are you sure you need that many rows? As a suggestion, most people wouldn't like having to scroll through 10,000 rows. I might either find a way to hide most of the rows and put in some filters or condense the information. Otherwise, if the lagging is too much, you might have to stick with the built-in Tkinter/TTK widgets. Keep in mind that you can always embed a Tkinter widget (eg. ttk.Treeview) inside the HtmlFrame.


UI: Warehouse hide/show button think's it's a promote button.

Checklist

[X] I've searched the issue queue to verify this is not a duplicate bug report.
[X] I've included steps to reproduce the bug.
[X] I've pasted the output of kargo version.
[X] I've pasted logs, if applicable.

Description
When hovering over the Warehouse's show/hide button, it shows the tooltip to promote to a stage.
Screenshots

Steps to Reproduce
Hover over Warehouse hide/show button.
Version
Server Version: fix/ci, Latest

Logs
Paste any relevant application logs here.

Including this in v0.8.0 only because it's exceptionally small.