Add spotVM and maxRunDuration feature to VM provisioning

Summary
This PR aims to enhance the VM provisioning capabilities of the google-compute-engine-plugin by introducing support for Spot VMs and maxRunDuration. This effort seeks to address the issues reported in #408, #473, and #358.
Enhancements

Spot VM Support: Incorporates the option to use Spot VMs, providing a cost-effective and efficient alternative to preemptible VMs without the automatic deletion after 24 hours.
maxRunDuration: Implements the maxRunDuration feature, enabling the automatic deletion of VMs after a specified duration to optimize resource utilization and cost.

Rationale
Although this plugin already has a background cleanup job for leftover orphan agent VMs, setting the maxRunDuration ensures that VMs deletion still happens even if the Jenkins controller itself has crashed. Besides this is an optional setting with no defaults enforced, so this feature is not trying to replace/interfere with the existing background job.
Technical Background
The plugin now supports the following VM options:

Standard VMs: Regular VM instances with guaranteed availability by GCP SLA and standard pricing. Also supports maxRunDuration.
Spot VMs: An updated version of Preemptible VMs, offering exactly same cost benefits without the restriction of automatic deletion after 24 hours.
Preemptible VMs: Cost-effective VM instances with limited availability, reclaimed by GCE after 24 hours.

Why Maintain Support for Both Spot and Preemptible VMs?
Despite the similarities between Spot and Preemptible VMs, retaining support for both options is essential for the following reasons:

Non-Deprecation by GCP: Google Cloud Platform does not plan to deprecate Preemptible VMs.
Backward Compatibility: Many Jenkins controllers are configured to use Preemptible VMs. Dropping support will disrupt existing setups.
Clear Differentiation: Retaining both options avoids confusion and simplifies the user experience, requiring no changes upon plugin upgrade.

Testing Status
Manual Tests: Screen recording and screenshots
User experience configuration page
https://github.com/user-attachments/assets/341eea09-fe2a-4769-b8f5-153a267ca004
VM Provisioned in GCP

Description
Content

Spot VM provisioned with max run duration 1200s

Standard VM provisioned with max run duration 600s

Preemptible VM as before

→ Unit tests for the scheduling() method, ensuring the compatibility with the old and new configurations.
 New integration test for the Spot VM with Max Duration: logs
[INFO] --- surefire:3.2.2:test (default-test) @ google-compute-engine ---
[INFO] Using auto detected provider org.apache.maven.surefire.junitplatform.JUnitPlatformProvider
[INFO]
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running com.google.jenkins.plugins.computeengine.integration.SpotVmProvisioningWithMaxRunDurationCasCIT
=== Starting com.google.jenkins.plugins.computeengine.integration.SpotVmProvisioningWithMaxRunDurationCasCIT
   0.042 [id=20]	INFO	o.jvnet.hudson.test.WarExploder#explode: Exploding /Users/gbhat/.m2/repository/org/jenkins-ci/main/jenkins-war/2.452.3/jenkins-war-2.452.3.war into /Users/gbhat/CBProjects/google-compute-engine-plugin/target/jenkins-for-test
   1.657 [id=20]	INFO	o.jvnet.hudson.test.JenkinsRule#createWebServer: Running on http://localhost:50634/jenkins/
   1.861 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: Started initialization
   2.403 [id=36]	WARNING	hudson.ClassicPluginStrategy#createClassJarFromWebInfClasses: Created /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/powershell/WEB-INF/lib/classes.jar; update plugin to a version created with a newer harness
   2.416 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/jakarta-mail-api.jpi
   2.426 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/mailer.jpi
   2.430 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/jakarta-activation-api.jpi
   2.434 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/display-url-api.jpi
   2.437 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/instance-identity.jpi
   2.443 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/matrix-auth.jpi
   2.460 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/echarts-api.jpi
   2.684 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/junit.jpi
   2.690 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/jquery3-api.jpi
   2.697 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/matrix-project.jpi
   2.707 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/checks-api.jpi
   2.713 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/command-launcher.jpi
   2.718 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/jdk-tool.jpi
   2.726 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/mina-sshd-api-common.jpi
   2.737 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/mina-sshd-api-core.jpi
   2.748 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/sshd.jpi
   2.755 [id=36]	INFO	hudson.PluginManager#considerDetachedPlugin: Loading a detached plugin as a dependency: /var/folders/80/w8mmdy513sb3y9fp5fr7vvqc0000gn/T/jenkins10513192598629104995/plugins/javax-mail-api.jpi
   3.003 [id=49]	INFO	jenkins.InitReactorRunner$1#onAttained: Listed all plugins
   3.010 [id=36]	INFO	j.b.api.BouncyCastlePlugin#start: /Users/gbhat/CBProjects/google-compute-engine-plugin/target/tmp/j h15818329323505612236/plugins/bouncycastle-api/WEB-INF/optional-lib not found; for non RealJenkinsRule this is fine and can be ignored.
   3.779 [id=46]	INFO	jenkins.InitReactorRunner$1#onAttained: Prepared all plugins
   3.784 [id=46]	INFO	jenkins.InitReactorRunner$1#onAttained: Started all plugins
   3.784 [id=42]	INFO	jenkins.InitReactorRunner$1#onAttained: Augmented all extensions
   4.229 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: System config loaded
   4.258 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: System config adapted
   4.259 [id=35]	INFO	jenkins.InitReactorRunner$1#onAttained: Loaded all jobs
   4.259 [id=50]	INFO	jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated
   4.328 [id=54]	INFO	jenkins.InitReactorRunner$1#onAttained: Completed initialization
   4.373 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#init: init
  53.506 [id=20]	WARNING	i.j.p.casc.BaseConfigurator#createAttribute: Can't handle class com.google.jenkins.plugins.computeengine.InstanceConfiguration#sshKeyCredential: type is abstract but not Describable.
  53.515 [id=20]	WARNING	i.j.p.casc.BaseConfigurator#createAttribute: Can't handle class com.google.jenkins.plugins.computeengine.InstanceConfiguration#sshKeyCredential: type is abstract but not Describable.
  53.528 [id=20]	INFO	c.g.j.p.c.ComputeEngineCloud#provision: Provisioning node from configs [com.google.jenkins.plugins.computeengine.InstanceConfiguration@500d3818] for excess workload of 1 units of label 'integration'
  54.750 [id=20]	INFO	c.g.j.p.c.ComputeEngineCloud#availableNodeCapacity: Found capacity for 10 nodes in cloud integration
  54.753 [id=20]	INFO	c.g.j.p.c.InstanceConfiguration#instance: User selected to use an autogenerated ssh key pair
  55.995 [id=20]	INFO	c.g.j.p.c.InstanceConfiguration#provision: Sent insert request for instance configuration [max-run-duration]
  56.015 [id=115]	INFO	c.g.j.p.c.ComputeEngineComputerLauncher#launch: Launch will wait 300000 for operation operation-1734367070702-62965cd28cc13-7d493207-2d2aa9bc to complete...
  56.030 [id=118]	INFO	c.g.j.p.c.ComputeEngineCloud#lambda$getPlannedNodeFuture$0: Waiting 300000ms for node max-run-duration-xvylg5 to connect
  64.385 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Launching instance: max-run-duration-xvylg5
  64.386 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: bootstrap
  64.386 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Getting keypair...
  64.387 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Using autogenerated ssh keypair
  64.387 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Authenticating as jenkins
  65.869 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
  75.898 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Failed to connect via ssh: The kexTimeout (10000 ms) expired.
  75.906 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Waiting for SSH to come up. Sleeping 5.
  82.686 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
  83.238 [id=115]	WARNING	c.g.j.p.c.ComputeEngineCloud#log: An error occured: There was a problem while connecting to <IP_ADDRESS>:22
  89.782 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
  92.775 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connected via SSH.
  94.275 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Verifying: /usr/bin/java -fullversion
  96.132 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Copying agent.jar to: /tmp
 106.796 [id=115]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Launching Jenkins agent via plugin SSH: /usr/bin/java -jar /tmp/agent.jar
 142.183 [id=115]	INFO	c.g.j.p.c.ComputeEngineComputer#onConnected: Instance max-run-duration-xvylg5 is preemptive, setting up preemption listener
 142.202 [id=118]	INFO	c.g.j.p.c.ComputeEngineCloud#lambda$getPlannedNodeFuture$0: 86172ms elapsed waiting for node max-run-duration-xvylg5 to connect
 143.721 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#testMaxRunDurationDeletesAndNoNewBuilds: Instance: max-run-duration-xvylg5
 143.721 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#testMaxRunDurationDeletesAndNoNewBuilds: instance scheduling configs are correct
 233.283 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Legacy code started this job.  No cause information is available
 233.283 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Running as SYSTEM
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Building remotely on max-run-duration-xvylg5 (integration) in workspace /tmp/workspace/test0
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [test0] $ /bin/sh -xe /tmp/jenkins5711445835290691383.sh
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: + echo hello world
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: hello world
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Finished: SUCCESS
 233.284 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#testMaxRunDurationDeletesAndNoNewBuilds: first build completed onmax-run-duration-xvylg5
 285.657 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#testMaxRunDurationDeletesAndNoNewBuilds: proceeding to 2nd build, after no remaining instances
 294.272 [id=67]	INFO	c.g.j.p.c.ComputeEngineCloud#provision: Provisioning node from configs [com.google.jenkins.plugins.computeengine.InstanceConfiguration@500d3818] for excess workload of 1 units of label 'integration'
 295.271 [id=67]	INFO	c.g.j.p.c.ComputeEngineCloud#availableNodeCapacity: Found capacity for 10 nodes in cloud integration
 295.272 [id=67]	INFO	c.g.j.p.c.InstanceConfiguration#instance: User selected to use an autogenerated ssh key pair
 297.504 [id=67]	INFO	c.g.j.p.c.InstanceConfiguration#provision: Sent insert request for instance configuration [max-run-duration]
 297.507 [id=181]	INFO	c.g.j.p.c.ComputeEngineComputerLauncher#launch: Launch will wait 300000 for operation operation-1734367312193-62965db8da883-a37d2ee9-34784052 to complete...
 297.520 [id=67]	INFO	h.s.NodeProvisioner$StandardStrategyImpl#apply: Started provisioning max-run-duration-5jhvlc from gce-integration with 1 executors. Remaining excess workload: 0
 297.525 [id=184]	INFO	c.g.j.p.c.ComputeEngineCloud#lambda$getPlannedNodeFuture$0: Waiting 300000ms for node max-run-duration-5jhvlc to connect
 313.965 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Launching instance: max-run-duration-5jhvlc
 313.965 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: bootstrap
 313.966 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Getting keypair...
 313.967 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Using autogenerated ssh keypair
 313.968 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Authenticating as jenkins
 315.521 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
 319.802 [id=181]	WARNING	c.g.j.p.c.ComputeEngineCloud#log: An error occured: There was a problem while connecting to <IP_ADDRESS>:22
 326.321 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
 326.591 [id=181]	WARNING	c.g.j.p.c.ComputeEngineCloud#log: An error occured: There was a problem while connecting to <IP_ADDRESS>:22
 333.316 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connecting to <IP_ADDRESS> on port 22, with timeout 10000.
 336.386 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Connected via SSH.
 337.521 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Verifying: /usr/bin/java -fullversion
 339.650 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Copying agent.jar to: /tmp
 342.939 [id=181]	INFO	c.g.j.p.c.ComputeEngineCloud#log: Launching Jenkins agent via plugin SSH: /usr/bin/java -jar /tmp/agent.jar
 377.883 [id=181]	INFO	c.g.j.p.c.ComputeEngineComputer#onConnected: Instance max-run-duration-5jhvlc is preemptive, setting up preemption listener
 377.895 [id=184]	INFO	c.g.j.p.c.ComputeEngineCloud#lambda$getPlannedNodeFuture$0: 80375ms elapsed waiting for node max-run-duration-5jhvlc to connect
 478.854 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Started
 478.854 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] Start of Pipeline
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] node
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Still waiting to schedule task
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: ‘max-run-duration-5jhvlc’ is offline
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Running on max-run-duration-5jhvlc in /tmp/workspace/p
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] {
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] sh
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: + date
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Mon Dec 16 16:44:41 UTC 2024
 478.855 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] }
 478.856 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] // node
 478.856 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: [Pipeline] End of Pipeline
 478.856 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#printLogsAndReturnAgentName: Finished: SUCCESS
 478.856 [id=20]	INFO	c.g.j.p.c.i.SpotVmProvisioningWithMaxRunDurationCasCIT#testMaxRunDurationDeletesAndNoNewBuilds: second build completed on max-run-duration-5jhvlc
 478.980 [id=224]	INFO	hudson.remoting.Request$2#run: Failed to send back a reply to the request RPCRequest:hudson.remoting.RemoteClassLoader$IClassLoader.fetch3[java.lang.String](2): hudson.remoting.ChannelClosedException: Channel "hudson.remoting.Channel@8103fa6:max-run-duration-5jhvlc": channel is already closed
 479.131 [id=20]	WARNING	o.j.h.t.RemainingActivityListener#onTearDown: PlaceholderExecutable:ExecutorStepExecution.PlaceholderTask{label=max-run-duration-5jhvlc,context=CpsStepContext[3:node]:Owner[p/1:p #1]} still seems to be running, which could break deletion of log files or metadata
 479.150 [id=20]	INFO	hudson.lifecycle.Lifecycle#onStatusUpdate: Stopping Jenkins
 479.957 [id=184]	WARNING	o.j.p.w.s.s.ExecutorStepExecution$RemovedNodeListener#cancelOwnerExecution
java.io.IOException: cannot find current thread
    at org.jenkinsci.plugins.workflow.cps.CpsStepContext.doGet(CpsStepContext.java:295)
    at org.jenkinsci.plugins.workflow.support.DefaultStepContext.get(DefaultStepContext.java:75)
    at org.jenkinsci.plugins.workflow.support.steps.ExecutorStepExecution$RemovedNodeListener.cancelOwnerExecution(ExecutorStepExecution.java:380)
    at org.jenkinsci.plugins.workflow.support.steps.ExecutorStepExecution$RemovedNodeListener.onDeleted(ExecutorStepExecution.java:355)
    at jenkins.model.NodeListener.lambda$fireOnDeleted$2(NodeListener.java:97)
    at jenkins.util.Listeners.lambda$notify$0(Listeners.java:59)
    at jenkins.util.Listeners.notify(Listeners.java:70)
    at jenkins.model.NodeListener.fireOnDeleted(NodeListener.java:97)
    at jenkins.model.Nodes.removeNode(Nodes.java:297)
    at jenkins.model.Jenkins.removeNode(Jenkins.java:2257)
    at hudson.slaves.AbstractCloudSlave.terminate(AbstractCloudSlave.java:91)
    at org.jenkinsci.plugins.durabletask.executors.OnceRetentionStrategy.lambda$done$5(OnceRetentionStrategy.java:142)
    at hudson.model.Queue._withLock(Queue.java:1409)
    at hudson.model.Queue.withLock(Queue.java:1283)
    at org.jenkinsci.plugins.durabletask.executors.OnceRetentionStrategy.lambda$done$6(OnceRetentionStrategy.java:137)
    at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
    at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68)
    at jenkins.util.ErrorLoggingExecutorService.lambda$wrap$0(ErrorLoggingExecutorService.java:51)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:833)
 479.993 [id=20]	INFO	hudson.lifecycle.Lifecycle#onStatusUpdate: Jenkins stopped
 480.062 [id=20]	INFO	o.j.h.t.TemporaryDirectoryAllocator#dispose: deleting /Users/gbhat/CBProjects/google-compute-engine-plugin/target/tmp/j h15818329323505612236
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 481.2 s -- in com.google.jenkins.plugins.computeengine.integration.SpotVmProvisioningWithMaxRunDurationCasCIT
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  08:07 min
[INFO] Finished at: 2024-12-16T22:14:56+05:30
[INFO] ------------------------------------------------------------------------

(cloudbees internal ticket link for back reference)

Submitter checklist

[x] Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
[x] Ensure that the pull request title represents the desired changelog entry
[x] Please describe what you did
[x] Link to relevant issues in GitHub or Jira
[x] Link to relevant pull requests, esp. upstream and downstream changes
[x] Ensure you have provided tests - that demonstrates feature works or fixes the issue

👋 @jglick , @Vlatombe , @nevingeorgesunny

User experience configuration page
https://github.com/user-attachments/assets/341eea09-fe2a-4769-b8f5-153a267ca004
VM Provisioned in GCP

Description
Content

Spot VM provisioned with max run duration 1200s

Standard VM provisioned with max run duration 600s

Preemptible VM as before

I will work on the testing as,

check and update automated tests (or write new tests)
Jcasc based testing
what happens to agents in jenkins if the vm got deleted in GCP due to maxRunDuration (maybe jenkins will mark agent as non-available - but will test and update the notes).

👋 Completed the PR from draft to ready, plz help review @jglick , @Vlatombe , @nevingeorgesunny

I am leaving my review as purely comments because I am going on vacation and don't want to block this while I'm off.

(@Artmorse has also worked on this plugin recently.)


Clean up the index page.

'Picking the Right Solution' already points to all these tools along with all other options.

This change is

/cc @chenopis


remove lucene-solr repo transition period mention on community.md

Please feel free to merge this PR as is. The NOTE is wrong as it stands now. 90% of development will happen against the new repo, so folks can worry about backporting later...


Chore/visit-id-#152

Description
the visit query parameter was added as part of #81. IIRC the purpose of having the query param was to prevent the cache being cleared for form-a if someone decided to fill out the feedback form halfway through. It was causing some issues though, see #152.

Removing the copying of visit parameter
Change Key from ${sessionId}:${visitId} to ${sessionId}:${formId} <- where formId is request.params.id, the id of the form. Comes from: https://github.com/XGovFormBuilder/digital-form-builder/blob/9953ff825ed7e205c63374fa6906d89860517e0a/runner/src/server/plugins/engine/plugin.ts#L192

Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce
the testing if necessary.
Before PR's can be merged they will need to be tested by QA and approved where
applicable. To flag the change to QA assign @XGovFormBuilder/qa as one of the reviewers.

manual, visitId no longer appended
manual, going to the summary, changing an answer, return url works fine
manual, going through a few pages, going back a few pages, answers are still persisted

Checklist:

[x] My changes do not introduce any new linting errors
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation and versioning
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] I have rebased onto main and there are no code conflicts
[n/a] I have checked deployments are working in all environments
[n/a] I have updated the architecture diagrams as per Contribute.md

@TheSpartan1980 - the smoke tests seem to be passing fine, iirc you have some tests that run through an entire form. Do you want to do any additional testing?

@TheSpartan1980 - the smoke tests seem to be passing fine, iirc you have some tests that run through an entire form. Do you want to do any additional testing?

@jenbutongit  I'll pick this up and give it a run through

how's it looking @TheSpartan1980? do you have an ETA? 👀

how's it looking @TheSpartan1980? do you have an ETA? 👀

@jenbutongit So far so good, ETA 30 mins


Installation causes Android failure

I installed the plugin in my Angular Nativescript app and got the attached errors in Sidekick, and the app would not start. The only way to remove the error was to remove the plugin and delete the Android folder in platforms. Tried a second time with the same result.

Hey @mchallenger88 , in the error log I do not see any reference to the plugin itself. So do not think this relates to it. Make sure your developer environment is set up correctly.

Thanks for responding.
It's possible it's not the plugin, but installing the plugin creates
that error. Removing the plugin eliminates the error.
Other plugins works without a problem.
------ Original Message ------
From: "Peter Staev"<EMAIL_ADDRESS>To: "PeterStaev/nativescript-masked-text-field"
<EMAIL_ADDRESS>Cc: "mchallenger88"<EMAIL_ADDRESS>"Mention"
<EMAIL_ADDRESS>Sent: 12/22/2018 2:56:32 PM
Subject: Re: [PeterStaev/nativescript-masked-text-field] Installation
causes Android failure (#31)

Hey @mchallenger88 https://github.com/mchallenger88 , in the error
log I do not see any reference to the plugin itself. So do not think
this relates to it. Make sure your developer environment is set up
correctly.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PeterStaev/nativescript-masked-text-field/issues/31#issuecomment-449597126,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdACCQn8o-30OVmSVhGbs_km7YeEf2hgks5u7pyAgaJpZM4Zfeq_.

Although I did just try to install the moment javascript library, and I
received a similar error.
Maybe it is something with my environment. My apologies if I spoke too
soon.
------ Original Message ------
From: "Peter Staev"<EMAIL_ADDRESS>To: "PeterStaev/nativescript-masked-text-field"
<EMAIL_ADDRESS>Cc: "mchallenger88"<EMAIL_ADDRESS>"Mention"
<EMAIL_ADDRESS>Sent: 12/22/2018 2:56:32 PM
Subject: Re: [PeterStaev/nativescript-masked-text-field] Installation
causes Android failure (#31)

Hey @mchallenger88 https://github.com/mchallenger88 , in the error
log I do not see any reference to the plugin itself. So do not think
this relates to it. Make sure your developer environment is set up
correctly.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PeterStaev/nativescript-masked-text-field/issues/31#issuecomment-449597126,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdACCQn8o-30OVmSVhGbs_km7YeEf2hgks5u7pyAgaJpZM4Zfeq_.

Peter-
I am experiencing a couple of problems with the Masked Text Box. First,
my form values have a trailing underscore "". For example, if I have a
telephone number mask, it will look like "(212) 555-5555" when I
retrieve the value.
The second thing is odder. When I have a blank field, when pushing a
couple of keys I have sometimes ended up with the textbox mask
disappearing and in its place is the word "false". It's happened a
couple of times, but I just tried to recreate the steps and I couldn't.
I'm not sure exactly which keys I'm pressing, but I think it is some
combination of the arrow keys or the backspace.
I'm using the Angular version.
Thanks in advance,
Mark
------ Original Message ------
From: "Peter Staev"<EMAIL_ADDRESS>To: "PeterStaev/nativescript-masked-text-field"
<EMAIL_ADDRESS>Cc: "mchallenger88"<EMAIL_ADDRESS>"Mention"
<EMAIL_ADDRESS>Sent: 12/22/2018 2:56:32 PM
Subject: Re: [PeterStaev/nativescript-masked-text-field] Installation
causes Android failure (#31)

Hey @mchallenger88 https://github.com/mchallenger88 , in the error
log I do not see any reference to the plugin itself. So do not think
this relates to it. Make sure your developer environment is set up
correctly.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PeterStaev/nativescript-masked-text-field/issues/31#issuecomment-449597126,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdACCQn8o-30OVmSVhGbs_km7YeEf2hgks5u7pyAgaJpZM4Zfeq_.

@mchallenger88 , please  do not revive old tasks when the problem is totally different than the original issue. Created #32


ObjectCollection::toArray() will not pass on $includeForeignObjects parameter to objects

Although each generated object that implements ActiveRecordInterface has a parameter $includeForeignObjects to include any foreign objects, ObjectCollection does not make use of this parameter and passes on always true.
The issue is here: \Propel\Runtime\Collection\ObjectCollection::toArray($keyColumn = null, $usePrefix = false, $keyType = TableMap::TYPE_PHPNAME, $includeLazyLoadColumns = true, $alreadyDumpedObjects = [])

PR open


[SPARK-6673] spark-shell.cmd can't start in Windows even when spark was built

added equivalent script to load-spark-env.sh

Test build #29593 has started for   PR 5328 at commit aaefb19.

Test build #29593 has finished for   PR 5328 at commit aaefb19.

This patch passes all tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

case class Literal protected (value: Any, dataType: DataType) extends LeafExpression

This patch does not change any dependencies.

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

CC @vanzin; I tend to trust your judgment about this and it does seem like Windows should have the same script. Does this only affect master / 1.4?

This problem is introduced by https://github.com/apache/spark/commit/e3eb393961051a48ed1cac756ac1928156aa161f
https://issues.apache.org/jira/browse/SPARK-6406
So this seems to affect only master branch.

Ah, I see that #5085 broke this in master. The previous code detected the scala version automatically, although in a different way from this patch. I tend to prefer the code that was there before (simpler), but don't have strong feelings either way.

@tsudukim up to you on whether you want to merge this or a different version. I'll merge whatever you see fit tomorrow since this one's important to fix.

@srowen @andrewor14 @vanzin - if this was caused by #5085, then does it affect Spark 1.3?

Agree, I think this is only for master, but wanted to check with @andrewor14 just because it was marked as a blocker for 1.3.1 / 1.4.0. I think it's OK to merge and then if for some reason it needs to go back into 1.3.1 we can do that.

Okay - let's see if we can figure that out and hopefully update the affects and target version on the JIRA to be clear this is unrelated to 1.3.

@srowen This version is OK to merge.


100% or full width

Thanks for opening an issue!
Please select the type of issue you're reporting. For questions.

[ ] Bug
[x] Feature Request
[ ] Question

Problem Report

Would love a 100% width option. I want my box to start at the full width of the screen.

System Info
Node Version: 6.5.0
Browser: Chrome
OS: macOS 10.12.4
Reproduction
If this is a bug report, please provide a reproduction of the issue by going to
http://www.webpackbin.com/41YFBvekG.
Paste a link here to your working reproduction.

You are free to style the resizable box however you like. Use CSS.

I have to provide a width in the component, or I'll get an error "The prop width is marked as required in Resizable, but its value is undefined." Unless you have another idea, I'd like to see an example of what CSS handling this.

More at: https://github.com/STRML/react-resizable/issues/69


Allow :include_blank => 'string value' for selects

Rails' FormBuilder allows :include_blank => 'string value' for selects, producing <option value="">string value</option>. This is different to using :prompt => 'string value' in that the blank value is included even if an option is already selected.

@justinfrench Thoughts? At the moment the select input doesn't allow the user to set a field back to nil, since the blank option is suppressed if the field already has a value.

@haines so this patch means that the blank option will always be included in the options, sounds exactly like I'd expect it to behave. I'd expect the same for prompt too.

Yep, that's what the patch does. However, I don't think prompt behave in the same way (otherwise aren't include_blank and prompt are doing exactly the same thing?).
IMO the difference should be that include_blank is used when blank is a sensible choice in the select box (i.e. for making optional fields nullable, :include_blank => 'None'), whereas prompt should be used when selecting the blank option would be invalid (i.e. only as a hint for required fields, :prompt => 'Please select:'). In the latter case since it doesn't make sense to revert a previously-filled field to a blank value, the prompt shouldn't be included if a value is present.

@haines Thinking out loud...

:include_blank => true and :include_blank => false are both pretty obvious
:include_blank => "Some String" is pretty obvious
:include_blank => true with :prompt => "Some String" is pretty obvious
:prompt => "Some String" alone should imply/force :include_blank => true

In my humble opinion, I don't think we should be specialising the behaviour based on if the object is being created or edited, or if there's an existing value present. If the form author wants to do this, they can do so in the form partial be checking the state of the object or the params[:action].
Given the above...
how do you feel about the rules above?
how do they compare to current formtastic behaviour?
how do they compare to what's in your patch?
@sobrinho what do you think?

I guess we should follow exactly what rails documentation says:
:include_blank - set to true or a prompt string if the first option element of the select element is a blank. Useful if there is not a default value required for the select element.
:prompt - set to true or a prompt string. When the select element doesn’t have a value yet, this prepends an option with a generic prompt – “Please select” – or the given prompt string.
This means, if using :include_blank, the option will be there always.
If using :prompt, the option will be there only if value is not set on database.
Seems like both options accepts boolean and string values.
That's what your patch do, @haines ?

@sobrinho, yep, that's what it does.
@justinfrench, I think that the only point in having both options is to have a difference between creation and editing. If you remove that distinction then :prompt and :include_blank would be completely equivalent.

Ok, if this patch brings us in line with Rails, perfect, let's just make the documentation is up to date too. Any more to do before this goes in?

Sweet, had a go at the docs, see what you think!

@haines many thanks, have merged in

@haines There is a spec fail related to your work. Can you please run the full suite on master and see if you can hunt this down ASAP? Would rather not revert the merge if it's easily solved!
select: options[:include_blank] when :include_blank is set to a string should have a select option with blank value but that string as text

Failure/Error: output_buffer.should have_tag("form li select option[@value='']", "string")
Expected [...] to have an element matching "form li select option[@value='']" with inner text "string", but found 0

@justinfrench Do you get the same result when you only run select_input_spec? I haven't been able to reproduce on 1.9.2 or 1.8.7; So far I've run it with everything except the generator specs (which seem to take ages) and haven't gotten it to fail yet.

@haines I'm just running bundle exec rake

@justinfrench Ok, managed to get my computer to stop choking on the generator specs and everything works. Then, just in case it was some oddity of my environment, I tested a fresh install by doing
git clone git@github.com:justinfrench/formtastic
cd formtastic
rvm use 1.9.2@formtastic
gem install bundler
bundle install
bundle exec rake

(and similarly for 1.8.7)
Still, every spec passes.

@haines I get a pass under 1.9.2 and a fail under 1.8.7. Curious.

Running bundle exec rake:
  1) select input explicit values using a nil name should have an input named post[title]
     Failure/Error: output_buffer.should have_tag("form li select[@name=\"#{name}\"]")
       expected
       <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
       <form accept-charset="UTF-8" action="/posts" class="xyz post" id="new_post" method="post" novalidate="novalidate">

<input name="utf8" type="hidden" value="✓">

       Title*<select id="post_title" name="post[title][]"><option value=""></option></select>

       </form>

       to have an element matching "form li select[@name=\"post[title]\"]", but did not
     # ./spec/support/custom_macros.rb:91:in `block in it_should_have_select_with_name'

ruby 1.9.3p0

Ok things get even more curious, not only is that a different example failing, but I tried on 1.9.3 and still get all passes!
Here's my Gemfile.lock, and there are no other gems installed (except bundler 1.0.21).

Sigh

My fail is also repeated on Travis CI under 1.8.7, and ree along with some i18n ones that have been bugging me for a few weeks.
Under 1.9.2 and 1.9.3 on Travis, there's the 18n stuff only

The first failed build for the i18n stuff was a README change, so sounds like it's environmental (different versions of i18n gem, for example), so I'll look there.
In regards to the select fails under 187 and ree, and the varied results on each of our systems, I'd say there's something environmental going on here too.
Will compare our Gemfile.lock files next...
@sobrinho @haines @yabawock
*

@haines okay, diff'd our two gem files, I would suspect the root cause is you have action pack and railties 3.1.1, I have  3.1.0. I ran bundle update (which bumped me up to 3.1.3), followed by bundle exec rake, and the full suite was green under 1.8.7. Spoke with the Travis-CI guys, and they suggested we check-in the Gemfile.lock (Why didn't I think of that? Why was it ignored?).
Waiting for the cifix branch to build!

Ok, turns out there are a couple of issues at play here, and it turns out the spec should fail.
It should pass for select inputs; Rails' FormBuilder#select delegates to FormOptionsHelper#select, which allows a string for :include_blank (here).
It should fail for timeish inputs; Rails' DateTimeSelector#select_* generates its select tag manually, and so only handles :include_blank as a boolean value (here)
The problem is that the include_blank spec doesn't test the different input types independently. I've made a pull request (#762) to address this. The inconsistencies we've seen between rubies is because only the first input type tested determines a pass/fail, and the ordering of a hash is not guaranteed.
The question is, then, should we continue to follow Rails, and maintain an inconsistency between the behaviour of include_blank for timeish and select inputs (in which case I need to remove the failing specs)? Or should we patch it?
Indeed, do you think should I open an issue on Rails for this? I think it's quite surprising that include_blank doesn't do the same thing in these two cases; I would view a time input as a special case of a select input.

@haines seriously great work. I'll merge in your fix, and it's probably worth a patch to Rails, but often we've just patched around Rails' inconsistencies, so would happily accept any patch that makes Formtastic more consistent regardless of Rails. Having said that, I'm pretty bummed out on Timeish and think the future is in date pickers, so I personally wouldnt invest heavily in Timeish beyond documenting the inconsistencies. If you're motivated, I'll definitely accept the patch though!
In regards the lock file, that was just a whim to narrow things down, wasn't intending that as a permanent solution.
Thanks once again!

@justinfrench I've had some good experience using appraisal as an enhancement to test suites. It makes testing against different combinations of gems very easy without getting in your way in regard to handling Gemfile or Gemfile.lock. Also it would enable to test against 3.0, 3.1 and 3.2 in one sweet setup - making certain it works on all supported versions.
I'd offer to integrate it into the current testsuite if there's interest.

@justinfrench Cheers! I agree regarding Timeish, I'm not using it myself (which is why I didn't notice the problem sooner). I'll put together another pull request to document the inconsistent behaviour, and remove the failing specs from include_blank_spec.rb

@yabawock Yes please!


env-cmd fails if there is no .env file, should just give a warning

Hi Todd.
If my project doesn't have a .env file, my command
env-cmd node etcetc
Will fail with:
Error: Unable to locate env file at default locations (./.env,./.env.js,./.env.json)
at getEnvFile (C:\workspace\so-ui-e2e-test\node_modules\env-cmd\dist\get-env-vars.js:34:11)
But look, I don't want to commit a .env file to my repository. Meaning when my CI clones and tries to run the project, there isn't a .env file there, and the CI build will fail.
Not having a .env file from which to load should be no worries, because I can
$PORT=1234 API_KEY=${secret_key} npm run start
in the CI environment.
But now you're making me commit my (empty) .env file so that CI doesn't fail, well it's only going to be a matter of time before someone commits their dev secrets to the repository.
IMHO you should allow the scripts to run if you don't find a .env file, just throw a warning with output to console, what do you think?

Interesting!
I think the @toddbluhm's idea was/is to fail so it safeguards against missing files or wrong paths...etc.
But your scenario seems a valid one.
Maybe we add a flag --notRestrict to throw warnings instead of failing?

I ran into this problem as well recently.
As a workaround I just made another script command to run that has the "env-cmd" param specified.
It looks something like this.
"start":
"node dist/src"
"start:env":
"env-cmd node dist/src"
CI/CD will run the "start" which doesn't have the "env-cmd" parameter so you don't get an error or unpredictable environment variables on the server.

I agree a flag to let it passthru without error would be very much appreciated.
I don't agree with creating another script to call this one, it's overkill and I need to pass things as arguments to env-cmd when you do runshell.

@ProLoser  I don't believe the thumbs down was warranted. My intention was to provide a workaround to unblock people on this issue until there's a working fix published. Sorry if my comment somehow looked like a solution instead of a workaround =). I see you created a PR good work!

environment variables are designed to be optional

I disagree. That statement is too generic.
For example, if a front end build script had an environment variable to define the API URL, then env vars here are not optional. Actually It's better fail the build in this case.

Thanks for all the comments. This is a great discussion!
So I did some checking on previous versions and as of version 8.0.2:

It will not error when used with a missing .env file
It will error if the --fallback flag is used, but neither provided nor fallback .env files exist.
It will not error if a .rc environment is provided, but no .rc actually exists
It will error if a .rc environment is provided, a .rc file exists, but the provided environment does not exist within the .rc file

So my conclusion is, that env-cmd should not error if the .env file does not exist. This is a bug that probably snuck in during the conversion to typescript. I will fix this, however, it will require a major version bump, because it will be a breaking change.
Also, a quick search through the issues will land you at this issue: https://github.com/toddbluhm/env-cmd/issues/26 Seems like this is not the first time this project has encountered this bug.

should not error if the .env file does not exist.

Won't this contradict #59 (v.9.0)?

I feel this should be a distinct argument that controls the failure behavior:
env-cmd --notFound=warn [--fallback] ...
env-cmd --notFound=error [--fallback] ...
env-cmd --notFound=silent [--fallback] ...

With the default value being warn? Open to better argument names / values tho

@mustafawm you are absolutely correct! Not sure how I missed that issue!
When I first saw this discussion my gut reaction was to say, yeah it should by default fail if the .env file is not found. As a new user, I would be frustrated and confused why env-cmd was not setting env vars in my program only to find out later on that I had the wrong path and it was not finding my .env file.
But then I saw the earlier issue I pointed out and figured I must have made the decision to leave it as a non-error condition, clearly though I changed my mind in v9.
With all of that said, I think failing on a missing env file is the right course of action, especially for new users. I also agree that there should be some option to ignore that for power users.
I really like the --silent flag for muting failures, I feel like I have seen that used elsewhere too for similar behavior. I would prefer just one option/flag so let's go with --silent and all it does is silence failures for:

missing .env file
missing .rc file
missing environment in the .rc file
missing --fallback file

I think that should handle all use cases? No warning should be necessary either, just failure or no failure I think should be the conditions.
Thoughts or comments?

I'd really like a polite warning or something in the logs so I can confirm behavior.
Perhaps a --verbose flag that tells you which file was found or if it didn't find a file at all?

I am certainly not opposed to a --verbose flag. I have thought about adding that for a while, but the need was never great enough and no one has really ever requested it.
I would, however, say that if you are concerned about it picking up the wrong file, you should not be using the --silent flag. Do your debugging and testing without the --silent flag so you get your failures, but then once you have everything fixed and running, add the --silent flag to get your final desired behavior.
Does that make sense?

Isn't it considered verbose by default since it fails when it cannot find a file?
So --silent will just help suppressing that for power users. (👍).
Just an opinion:
I like the idea of console.info to tell the user whether the file was found or not.
So even when --silent is provided, it tells them ".env file couldn't be found but we're honoring the --silent flag you passed..."

If you output logging it by definition is not silent.
I don't think pure silent is really useful though, I think you should always see what file was found, the only variation should be if it fails or not.

Alright so here is what my thinking/plan is so far.
Current style:
When you run env-cmd it does not output anything (just whatever the command your passing in outputs). The only time env-cmd outputs something is under a failure condition to help explain why the failure occurred. I believe that is reasonable so as to help debug the failure.
New style:
The above style will stay the same, with no changes.
A --verbose flag will be added. This will output a lot more debugging information to help users debug situations/issues and understand how env-cmd works.
A --silent flag will be added.  This will silence all output from env-cmd (obviously whatever the command your passing will still output normally). It will also prevent failure conditions for the following:

Missing .env file
Missing .rc file
Missing environment within the .rc file

Failures that will still occur under the silent flag:

Bad .env file format errors
Bad .rc file format errors
If the passed in command fails, the failure will bubble up as expected and exit with the correct exit code

The --verbose flag will override the --silent flag as far as output is concerned. The --silent flag will still suppress errors for the above conditions.

Failures that will still occur under the silent flag:
* Bad `.env` file format/parsing errors

* Bad `.rc` file format/parsing errors

* If the passed in command fails, the failure will bubble up as expected and exit with the correct exit code

I think if you pass --silent you should silent (just an opinion).

The --verbose flag will override the --silent flag as far as output is concerned. The --silent flag will still suppress errors for the above conditions.

Or just fail when both flags are provided, display help menu, ask user to pick one option. (just a thought)

@mustafawm I did give serious thought about --silent just preventing all errors (except ones bubbled up from the passed in command). I'm certainly not opposed to that and actually somewhat in favor of it, I was just concerted it might be too extreme. But on the other hand --silent is supposed to be a power user feature anyways.
Thanks for your thoughts on --verbose and --silent at the same time. I will think on that more but I still lean towards --verbose taking precedence. If you are passing the --verbose flag and you don't want output, then remove the --verbose flag. I guess at this point --silent is not so much about output as it is about suppressing errors.
With all of that said, will my proposed solution/thinking solve your issue?  Because that is after all the point of this whole discussion, to solve real-world use case scenarios for everyone in this thread.

Thanks mate.
Currently I'm not facing any issues with the current behavior (nor do I think the new behavior will cause any). The main issue here is OP's
I was reviewing this 🆒 package to see if there are new changes/maintenance issues..before re-using it in my current/latest project 🙂
So I came across this issue and thought I share my two cents.

Would really love to have some sort of conclusion to this discussion since I have an open PR just waiting to get merged and in the end I don't really care WHAT happens as long as I can see warnings when files are (and aren't) found

@ProLoser well then here is your conclusion.
--verbose will log info relating to what .env file and/or environment is being used regardless of any other flags as well as what settings were set. This flag is primarily used for debugging purposes.
--silent will prevent env-cmd from failing on any errors except those produced by the child process (the executing program).

So if I want to get warnings on missing files I'd use both flags together?
env-cmd --verbose --silent yarn myScript?

@ProLoser Yes. --verbose won't be too crazy though. It should really only print options/flags set, location of env/rc file used (or missing) and potentially the environment if rc file used.

Okay, I will TRY to start a new PR today if I have time, but I can't touch my existing PR since our internal code is pointing to that branch. If I don't open a PR within the next day or two though perhaps you can just tackle it?

Just PR'd the first part of this issue. https://github.com/toddbluhm/env-cmd/pull/101 adds support for --verbose flag. I started here because it forced me to re-structure the errors and messaging to be more consistent and organized.
Once this is in, it should be much easier to create the --silent flag.
@ProLoser take a look at the logs being printed and let me know if they suffice for what you need.

@toddbluhm the logs look good

Sorry for the delay on this. My Christmas vacation did not go as planned. This commit adds the --silent flag. Let me know if it works as expected so we can resolve this issue.  Thank you again for your patience 😄
https://github.com/toddbluhm/env-cmd/commit/27a270570610aa5e3575a8d7ae754e91d8e545a9

I have published 10.1.0 with both the --verbose and --silent flags.

Closing due to inactivity

add env-cmd -f ./......
"dev": "env-cmd -f ./config/mayVar.env nodemon src/index.js"
and it will got fine


Update Pipeline Editor to 0.9.0 and Canvas to 11.0.0

Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

CI is broken on master and @bourdakos1 is on it. Merging to unblock @marthacryan.


Types in @changesets/types not properly exposed for import/export

Affected Packages
@changesets/types
Problem
@changesets/types is not properly exporting available types, resulting in a "Cannot find module or corresponding type declarations" TypeScript error.
CodeSandbox reproduction here
Proposed solution
The package.json should not have "main" and "module" set to empty .js files with no type definitions. It looks like src/index.ts would be a better target.

It works with just any TS version (with older ones you might not be able to use import type syntax but still). See this TS 3.3 playground


feat(scan): include exit code and reason in JSON result

Description:
This PR introduces enhancements to the scan and process_report functions to include the exit code and corresponding reason in the JSON result. This improvement aims to provide better insights into the scan outcomes, making it easier for the platform to understand and act upon the results.
Changes Made:

process_report Function:

Added parameters exit_code and exit_reason with default values (0 and "No vulnerabilities found." respectively).
Updated the JSON result to include the exit code and reason.

scan Function:

Defined a mapping dictionary EXIT_CODE_REASON_MAPPING to map exit codes to their corresponding reasons.
Set the exit_reason based on the determined exit_code using the mapping dictionary.
Updated the process_report call to include exit_code and exit_reason.

system_scan Function:

Ensured the process_report call includes default values for exit_code and exit_reason.

Details:

Mapping Exit Codes to Reasons: Introduced a dictionary EXIT_CODE_REASON_MAPPING in safety/constants.py to map predefined exit codes to user-friendly reason strings. This helps in providing clear and understandable reasons for each exit code.
Enhanced process_report: The process_report function now accepts and includes exit_code and exit_reason in the generated JSON report. This allows for more comprehensive reporting of scan results.
Modifications in scan and system_scan: Updated the scan function to determine and set exit_reason based on the exit_code. Similarly, ensured the system_scan function passes default values for these parameters to process_report.

Rationale:
Including the exit code and its corresponding reason in the JSON result enhances the clarity of scan reports. This improvement facilitates better decision-making and error handling on the platform, ultimately improving the user experience.

Summary by CodeRabbit

New Features

Introduced a mapping for exit codes to descriptive messages, enhancing clarity in error reporting.
Improved reporting capabilities in the scan process, including detailed JSON output with exit status and reasons.

Bug Fixes

Enhanced user feedback during scans by providing clear exit reasons based on the new mapping.

Style

Made formatting adjustments for improved code readability and consistency.

I noticed that a datetime serialization error is thrown during testing. I don't believe this issue is directly related to the changes introduced here, but we could introduce datetime serialization logic to address it if needed. Specifically, we can add a custom serializer to handle datetime objects when generating the JSON result. Please let me know if you would like me to include this fix in the current PR!


Manual mounting overhaul

Now it's based on a wheel that let's you choose the rotation
Blocked by SlimeVR/SolarXR-Protocol#114

no longer blocked ^^

I also block Reset mounting widget button if full reset status is currently on!


Allow transaction reversal when fraud happens

As there were fake websites/wallets appear to steal users passwords and Coins, can we

Set up a platform to allow people report fraud and assign a number to each case
Other users (or anyone) can sign up as investigator and verify the fraud report is true with proves (explanations and screenshots)
If eg. 20 users from eg. 10 different countries verify the that the fraud report is true, then the transaction will be reversed automatically. And the person who get back the money can tip the addresses who helps in the process. (One button for the total amount, and money will be split evenly/ the first person gets more as that person has to do all the investigation vs the others maybe just reviewing the first person’s investigation)
Allow users to report fraud on revered transaction as well

can you use this?
https://support.blockchain.com/hc/en-us/articles/211164103-Enable-2-Step-Verification-2FA-#:~:text=2-Step Verification (commonly%20known,%2C%20Yubikey%2C%20or%20SMS%20codes.

This would go against the Blockchain principal of being immutable. Reversing transactions would not be possible because when a block is already mined, there isn't a way to go back without a network-wide consensus of a fork. This could be done if it were implemented as an auto-fork, but that would be extremely performance inhibiting and would be abused in many, many different ways. I think that this feature will not work and is not possible to implement on the Blockchain.


上传文件报错

Forbidden: Failed uploading "测试图书.epub" to "/"
web界面显示上面的上传失败消息。
下面是代码日志打印：
[DEBUG] Did open connection on socket 8
[DEBUG] Did connect
[DEBUG] Did start background task
[DEBUG] Connection received 4129 bytes on socket 8
[DEBUG] Connection on socket 8 preflighting request "POST /upload" with 4129 bytes body
[DEBUG] Connection on socket 8 processing request "POST /upload" with 4129 bytes body
[DEBUG] Connection sent 167 bytes on socket 8
[DEBUG] Connection sent 210 bytes on socket 8
[DEBUG] Did close connection on socket 8
[VERBOSE] [<IP_ADDRESS>:80] <IP_ADDRESS>:50788 403 "POST /upload" (4129 | 377)
[DEBUG] Did disconnect
[DEBUG] Did end background task

你检查是否设置了限制允许的文件类型，或者文件存放路径是否正确。


Bug fixes and stable testing

Thanks @ofcyln!

:tada: This PR is included in version 1.1.5 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Added PrexView service

PrexView service API to convert data form XML or JSOn to PDF, HTML and Image

Hey @danioso - would you mind putting this in alphabetical order please?
Thanks!

Done, thanks @mikestreety


Adapt to the new ConnectionFactory.connect API

Adapt to ConnectionFactory.connect spoken about in terracotta-apis issue here: Terracotta-OSS/terracotta-apis#284.

Needs javadoc for the new public methods.


Rename matrix _min_v to _m_inv because it's the inverse of _m

The _min_v matrix is the inverse of _m.  Perhaps there was a typo when it was originally named.
This PR changes the name to _m_inv.
This also adds some comments to describe what the matrices and a couple of the constants are.

@hartwork, Need me to make any changes to this?

@planet36 I don't have the background to do a proper review here myself but I'll take @boronine's approval and merge.


Move to Python 3.7 (at least)

Atm the whole package requires 3.6 which is out of standard since ages.
At the moment using python 3.7 raises an error with requirements since pip cannot find dataclasses==0.8 cause dataclasses is builtin since 3.7.
Immediate pro: apparently solves the compatibility issue in requirements for importlib-metadata between flask and sphinx since installing flask with 3.7 gives you importlib-metadata==4.8.3.
@deusebio @NicolaDonelli

Yes, I've experiencing the same thing. We can probably first get everything stable (linting, mypy, etc) and then increase the python version. But yes, I totally agree, we should move away from 3.6, or rather make things a bit more orthogonal between versions (changing python version also means to change requirements, since some packages are not supported on e.g. python3.6 after a certain version)

Probably moving to Python 3.7 could solve the problems with requirements...

I have just tested out to setup the repo from scratch by also removing the requirements.txt and requirements_ci.txt (old requirements_dev.txt), letting the "make reqs" (or any other make command actually, since basically everything depends on these requirements) create them and using them for tests, static typing checks and etc.
No issue is raised, also with Python3.7
IMPORTANT POINT
I'm starting to think that it would probably be a cleaner template to also avoid specifying in the template hard requirements.txt and requirements_ci.txt, and rather let pip-tools create them the first time we run make, after the repo is created. This also allow to create always at the beginning environments which are up to date with the latest versions of the packages


Create a simple developer interface without a dependency on Gnosis infrastructure

Some projects are used to test on different testnets that are not supported by the Safe (e.g. Ropsten / Goerli). Developing a Safe App, therefore, requires deploying the same contracts also on Rinkeby or testing directly on Mainnet.
This can be solved by developing a lightweight dev interface (single-owner, no service dependencies, ...)
What it should be able to do:

Deploy a master copy if it's not deployed to the network of user's wallet
Deploy a 1oo1 safe
Load a safe app
Safe app should be able to propose transactions/rpc calls

https://dev.gnosis-safe.io/


Add 'model' function to print the device name

This PR adds a new function which will be enabled by default. The function displays the product/model name of your device if it exists. For example on my laptop it shows Lenovo YOGA 900-13ISK and my iPhone it shows iPhone 5s.
Note: This feature won't work on custom built PCs or devices without OEM info.
TODO:

[ ] Add support

[x] Add support for Linux

Not sure if this works on every machine yet.

[ ] Add support for OS X
[x] Add support for iOS
[ ] Add support for BSD
[ ] Add support for Solaris
[ ] Add support for Windows

[ ] Testing

[ ] Test the current implementation on various Linux systems
[x] Test the feature on iOS

Testing:
If you'd like to help me test this is what you need to do:

Git clone neofetch.

git clone https://github.com/dylanaraps/neofetch

cd to the new directory.

cd neofetch

Swap to the model branch.

git checkout model

Run neofetch without a config from the directory.

./neofetch --config off

Let me know if the feature works/doesn't work on your machine.
Screenshots are nice too. :)

Adding Mac support for this, should I have the model print as iMac13,1 or iMac (21.5 inch, Late 2012)? Both are technically correct, and I could even add an flag for choosing which to print (such as --mac-model [model|name|modelname])

I'd go with the second one, it looks nicer imo.

After doing some more research, it looks like I'll have to do a curl to http://support-sp.apple.com to get the prettier name as OS X finds it by running the last 3 characters of the serial number to that address and returns an XML file. Every single time you go to System Profiler to see it...
I can cache the result as it will never change. Are you still okay with doing the pretty method?

I've fixed the config issues and opened a new PR here: #310


Update for unofficial extras changes

Plugin does not work correctly with more recent unofficial extras versions. Bindings need to be updated. greaka/arcdps_bindings will not be updated for this in the near future, may need to switch to own bindings.

Created a fork of Greaka's bindings over at Zerthox/arcdps-bindings. Switched to those bindings in https://github.com/Zerthox/arcdps-food-reminder/commit/bf196da538c69b6a05a2e88da748e4afe8c0feb2.


-- Added missing producer-model-v1.2 dependency as module

No need to add this manually, the producer-model-v1.2 is not yet in maven since it's artifact of not yet released version of spline server (https://github.com/AbsaOSS/spline). You should be able to get the artifact by building spline server from develop branch. Then you can install it in your local maven repo.
There are other changes in this PR where I don't really understand why you did them: changing parent pom, deleting maven modules, removing developers from pom?


WIP: v3 docs

Forgot to add the auto modifier in... I believe we shouldn't add auto as a Placement. This means we can remove all the checks around that which simplifies types. Instead, auto should just take it as an option.
auto() // 'auto' default
auto('start') 'auto-start'
auto('end') 'auto-end'

Bunch of other ideas floating around in my head:
1.
Instead of a modifier, placement could accept a tree-shakeable piece of code.
import { position, auto } from '@popperjs/dom';

position(reference, popper, {
  placement: auto()
});

2.
We should probably call the main API computePosition, since it's pure, it's more descriptive...
3.
shift() could take limit as a tree-shakeable function, maybe the property could be called limiter. This couples the code better and avoids ordering issues. It's a bit nonconventional though.
import { computePosition, shift, shiftLimiter } from '@popperjs/dom';

computePosition(reference, popper, {
  modifiers: [
    shift({ limiter: shiftLimiter }),
  ]
});

The problem with that is that users of libraries such as Bootstrap which don't have usually access to JS will not be able to use the auto placement. I'm wondering if we should also expose a wrapper around the new API that exposes something more in line with the v2 interface to ease the adaoption.
I don't have a strong preference but let's not use capital names since they are usually reserved for classes
I like it

It doesn't look like Bootstrap 5 offers the auto placement at all 🤔 https://getbootstrap.com/docs/5.0/components/tooltips/. imo, we shouldn't provide any wrappers, because Bootstrap can create their own mini-wrapper. The whole point of the API is users can do whatever they want to suit their needs.
I agree, problem is popper is often used lowercase to refer to the element 😒 computePosition is likely the best bet for now, even if it's longer

It doesn't look like Bootstrap 5 offers the auto placement at all 🤔 getbootstrap.com/docs/5.0/components/tooltips. imo, we shouldn't provide any wrappers, because Bootstrap can create their own mini-wrapper. The whole point of the API is users can do whatever they want to suit their needs.

@XhmikosR would love to hear your input on this

Also, I think it would be best if authors prevented user access to Popper's details. Bootstrap 5 can't upgrade to v3, because they provide access to Popper's config which is v2's API.  Tippy is the same.
I think instead we should encourage the authors to create their own wrapper APIs around Popper which would allow them to update Popper majors in the future easily without breaking the API. This is much more intuitive with v3's lower-level API anyways.

We do support 'auto' IIRC, see the options table.
TBH, I didn't follow the popper changes closely, and it took us a while to sort out the issues from the 2.x upgrade. We don't have a lot of people around who are familiar with this part of the codebase, so if you could help us with any upgrades, I'd really appreciate it.
/CC @GeoSot since he spent some time with the popper code.

I can only tell, we make use that placement: 'auto' in docs and in our code
https://github.com/twbs/bootstrap/blob/5290080d4df3047d04c8a232bca5dc7f8eaa4bc6/js/src/tooltip.js#L52-L58


fix find_package(wxWidgets) issue in release build

fix path to wxwidgets library for release build (cmake/modules/FindwxWidgets.cmake)

Thanks for the PR!


Error when calling scrollTo

The following error is logged when calling grid.scrollTo
asked to listen on core.on.scrollEnd but scope wasn't passed in the input parameters, you probably forgot to provide it, not registering
Scrolling seems to still work, so this is a minor issue.  The problem is that scrollToIfNecessary isn't passing in a scope
var dereg = self.api.core.on.scrollEnd(null,function() {
I 'fixed' it locally by passing in self.appScope instead of null.  No idea if this is right or not, but it makes the error go away
You can see this issue on tutorial 202 http://ui-grid.info/docs/#/tutorial/202_cellnav

I noticed this the other day.  I added the log message about a week ago when I finally got annoyed at forgetting (again) to pass in $scope when I registered on an issue, figured I'd give an error for it.  But @swalters correctly pointed out that it's OK to pass in null, so I need to check if there's a variable in that slot that's not a $scope variable, rather than just checking that that there isn't a $scope.  I'll do something with it today.


feat(react): create package draft orders react

Description

This PR is about create the Draft Orders React.

Dependencies

Checklist

[x] The commit message follows our guidelines
[x] Tests for the respective changes have been added
[x] The code is commented, particularly in hard-to-understand areas
[x] The labels and/or milestones were added

Disclaimer
By sending us your contributions, you are agreeing that your contribution is made subject to the terms of our Contributor Ownership Statement

Description
This PR is about create the Draft Orders React.

Can you elaborate a bit on this description? I suggest detailing on what was done. Eg. This PR creates a React hook for the draft orders Redux logic. Given an id, it returns x, y and z.


Problem Description
如题，看了release，找了一圈，没有发现dmg格式的安装包。
Solution Description
编译打包macOS版本。
Alternatives Considered
No response
Additional Context
No response

Ditto

Ditto.

 Error failed to bundle project: failed to upload app to Apple's notarization servers. The packaging failed. Can someone fix it？

https://github.com/tauri-apps/tauri/issues/9400

+1

success build app for macOS


Cat "$LINK_FILE_LIST": argument list too long

I have a huge "$LINK_FILE_LIST" file. When Xcode run the script, I got the "argument list too long" issue. How can I fix it?

Hi, I’ve changed unhide to read the "$LINK_FILE_LIST" internally. Can you pull the project and try again?

Hi, I’ve changed unhide to read the "$LINK_FILE_LIST" internally. Can you pull the project and try again?

It works! Appreciate it.

np


Compilation in headless mode

What problem does this solve?
Use types from leafwing-input-manager in a headless server that shares code with a graphical client.
What solution would you like?
Could the bevy/bevy_gilrs feature be made optional? leafwing-input-manager seems to compile fine without it.

Yep, I'd be happy with a PR to do this.


NYISO feature: capacity prices

Added a method to nyiso.py that pulls the latest capacity price report and parses it for latest record of prices (past ~5 years of monthly prices for the three auctions)
Added a simple test for the method in tests/test_nyiso.py
Added an example notebook to show what the resulting dataframe looks like

Things to consider in your review...

I noticed in the base url there is a 8 digit number (after 210142) that changes with every year and I am not sure what it represents. Come 2023, and every new year after that, I expect we will need to update the code or figure out what it means to handle it programmatically.

Thanks for the contribution! Will go out in next release


Fixed variable name bug (Issue #1043)

Fix small variable name discrepancy in system/helpers/inflector_helper.php (bug #1043).

https://github.com/EllisLab/CodeIgniter/pull/934 ... not that it matters which one would be merged. :)


Add all possible parser resume-points to resumeParsing() method

Purpose
$subject.
Fixes #23716
Approach
N/A
Samples
N/A
Remarks
N/A
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #23926 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #23926   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

Continue to review full report at Codecov.

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


Example in Introduction doesn't return a value on success

https://github.com/Lastique/scope/blob/develop/doc/scope.qbk#L268
The function doesn't return a value on success.

Thanks, should be fixed now.


Consistent style in Axom's build system

Some recent PRs ( #137, #140) have raised questions regarding consistency in our blt/cmake usage within Axom's build system:

Should we prefer for the end parenthesis token -- ) -- to be on its own line or to keep it on the same line as the last argument?
For calls to blt_list_append() should the IF argument be escaped?

Details for the first question:
For the first issue, which option should we prefer?

End parenthesis on same line:

 set(sidre_headers
    core/Array.hpp
    ...
    core/sidre.hpp )

End parenthesis on new line:

 set(sidre_headers
    core/Array.hpp
	...
    core/sidre.hpp
 )

The former reduces the number of lines in our build system files, while the latter reduces the whitespace changes when adding/removing an item from a list.
See: https://github.com/LLNL/axom/pull/140/files/4ad50a7d62b79a979bb9e0d3135b5e04aad0ad7e#r363941980
Details for the second question:
The blt_list_append macro takes a boolean predicate as an argument to its IF parameter.
A recent blt PR (https://github.com/LLNL/blt/pull/322) conclusively showed that we do not need to escape the IF argument in calls to blt_list_append(), settling an open question (https://github.com/LLNL/axom/issues/41).
I suggest that we consistently not escape these, since that will add more context to cmake error messages if/when things go wrong (e.g. if we pass in a non-existent variable).
See: https://llnl-blt.readthedocs.io/en/develop/api/utility.html#blt-list-append

Regarding case 1 (the paren)  if less whitespace is the goal, then you'd also want to put all the file names on the same line.  But limit to 80 characters per line of course.

This is really boils down tp a personal preference but I vote for having the parentheses on the ending line (case 1).
I am fine with the second question.


Add mocha dependencies

The only thing this is really doing is adding the correct typings - without direct references to the 5.2.5 version it falls back to using the base ADS one which is much older so the typings are very out of date.
Adding the mocha reference isn't strictly necessary since we get it through the vscodetestcover package anyways (hence why you don't see any changes in the yarn.lock). But it's good to be explicit here since we tend to reference the mocha package in the tests so that we're sure to be using the correct version.

@SakshiS-harma I'm pretty sure this isn't going to fix whatever weird issues you were having but maybe there's some odd behavior I don't know about. So anyways if a full clean/rebuild doesn't fix the issues you were seeing then try bringing this change in and seeing if it helps.

Pull Request Test Coverage Report for Build 622783555

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.001%) to 43.276%

Totals

Change from base Build 622703449:
-0.001%

Covered Lines:
25212

Relevant Lines:
53186

💛  - Coveralls


When using ESM-MSA-1b, is the MSA generated in real-time from the input sequence or is it fixed?

Thank you for sharing such outstanding work.
I looked up the MSA Transformer related example code under the example folder, but it looks like msa is read from a file. For the new input sequence, do I need to generate a new msa file?
If so, in which part of the repo can this part of the code be found (code for generating msa file according to input sequence)?

Yes the MSA needs to be provided, this can be done using the standard tools eg HHblits, JackHMMER, MMSeqs etc.


Error "(SystemJS) exports is not defined" after instructions of install

hy, sorry but i get
Error: (SystemJS) exports is not defined
	ReferenceError: exports is not defined
	    at eval (http://localhost:59058/app/app.module.js:11:23)
	    at eval (http://localhost:59058/app/app.module.js:102:3)
	    at eval (<anonymous>)
	Evaluating

after instructions

It's related to SystemJs exports. Please have a look at this SO answer: https://stackoverflow.com/a/43811104/833811


 IF YOU DO NOT FOLLOW THE FORMAT OR MAKE A GENERIC TOKEN REQUEST YOUR ISSUE WILL BE DELETED WITHOUT COMMENT
YOUR JUSTLIST MUST FOLLOW THE JSON SPECIFICATION
https://github.com/justswaporg/justlists/blob/main/example.justlists.ts
Checklist

[  ] I understand that this is not the place to request a token listing.
[  ] I have tested that my JustList is compatible by pasting the URL into the add a list UI at justswap.org.
[  ] I understand that filing an issue or adding liquidity does not guarantee addition to the justlists website.

Please provide the following information for your token.
JustList URL must be HTTPS.
JustList URL: https://doa-digital-on-asset.com/tokenlist.json
JustList Name: TokenListName
Link to the official homepage of the JustList manager: https://doa-digital-on-asset.com

Hi, digitalonasset, I hope you have a good day.
Please first create createExchange in SunSwap by youself. Specific methods can be referred to https://www.sunswap.com/docs/sunswapV2-interfaces_en.pdf
Second, We are currently very tight on development resources and adding new lists, If timing is a key issue for you, we recommend you join the existing community SUNSWAP list, for example: Tron Alliance List: https://github.com/listtronalliance/tronalliance.
Thanks

How to createExchange is not found in the pdf you provided. Is it createPair?

https://github.com/justswaporg/justlists/issues/4209


python3Packages.sqlalchemy-mixins: init at 1.5.1

Motivation for this change
Python mixins for SQLAlchemy ORM
https://github.com/absent1706/sqlalchemy-mixins
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

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

2 packages built:

python38Packages.sqlalchemy-mixins
python39Packages.sqlalchemy-mixins


Debugging a scheme as root in OS X allows binding to port 80, but breaks runRequest()

After changing a scheme to run as root, you can bind to port 80, but the runRequest always returns a 404 error with  "The file "(pathInfo)" was not found.".utf8

To expand a little, say for example that you wanted to test Perfect in a production environment, serving a webpage with a hostname on port 80. If you configure the server to the correct public IP and Hostname, then run Perfect, you get a network error similar to "Exception in server run loop NetworkError(13, "Permission denied") <IP_ADDRESS>:80"
If you edit your scheme and debug as root, this resolves the error with port 80 (only root is allowed to bind port numbers below 1024), but the content is not longer served, as the runRequest always returns a 404 status code with "The file "/" was not found." on the screen.

This issue is resolved with the latest builds on Swift 3 (swift-DEVELOPMENT-SNAPSHOT-2016-06-06-a)


fix: add validator cap and bond checks when creating the delegation strategy

I've done a rework on the function and modified the LiquidStake one as well. The previous version was wrong.
You'll also see I've removed a few test parts that were checking exact delegations since the delegation strategy uses a map and it is not possible to have consistent results when testing. Still, the overall amounts are checked.


Don't use channel plugin by default

Currently, Squelch reimplements a lot of state tracking that squelch-client does. We need to extract all the state tracking (minus the nick, and server info) to an external module that can be used both in Squelch and independently.
Squelch-client Tasks

[x] Move autoRejoin to kick.coffee (seriously why was that in channel)
[x] Implement names event with internal names buffer (clear buffer on endofnames event)

New State Plugin

[x] get all channels currently joined
[x] check if channel is currently joined
[x] get all channels
[x] get topic of a channel
[x] get channel mode
[x] save topic, topicwho, topictime on topic events
[x] sync channel users with names event
[x] sync user nicks on names event
[x] sync users on 'join' event
[x] sync users on 'part' event
[x] sync users on 'kick' event
[x] sync users on 'quit' event
[x] add channels user was previously in to 'quit' event
[x] update channel mode on +mode event
[x] update channel mode on -mode event

In progress https://github.com/squelch-irc/squelch-client-state

Eh, keeping this open until I publish a new version


3_MC_BuildingsArchetypes

Dataset 3_MC_BuildingsArchetypes uses labels Oth-R32EU15 and Oth-R32EU12-H, while the classification is with the underscore:  Oth_R32EU15 and Oth_R32EU12-H. As consequence, the archetypes are not implemented for those two regions.

I guess BuildME is to blame: https://github.com/nheeren/BuildME/blob/d32c1aaa607dc8da7e2b37ae6a20d635ca90ad95/BuildME/settings.py#L461-L480
Let us coordinate for the next run soon @CarrerF

Important observation @CarrerF !
--> I will go through the archetypes files and check that all regional labels match with the ones from the master classification. If not, correct and make an update for database version 2.5.
When importing the parameters, ODYM also checks and reports the number of matches. Obviously, I haven't paid close enough attention to the log file here. ODYM troughs no warning if it doesn't find data where there should be data, it then leaves the affected value at zero. It only throws an error if the entire classifications don't match.
--> I will (not now, but later this spring) check and update the data parser to throw an error if it finds classification items that are not define in the master list.

This error applies to all building archetype files. I now fixed it in the current version, @nheeren please make sure that buildME used the correct regional labels Oth_R32EU15 and Oth_R32EU12-H!

This error applies to all building archetype files. I now fixed it in the current version, @nheeren please make sure that buildME used the correct regional labels Oth_R32EU15 and Oth_R32EU12-H!

Certainly will https://github.com/nheeren/BuildME/issues/58
Do you intend to keep the region labels as they are for now?

Fixed during major data update (re-calc and add non-res buildings) plus label fix.


Add .uninit section for defmt when not using direct-boot

#179 adds support for defmt when using direct-boot feature. Could a similar linker script be added for when not using direct-boot?
Worth pinging @9names I suppose :)

It would be good to get this for the 2nd stage bootloader version of esp-hal, because esp-wifi currently only supports using the bootloader.
When the original PR was made, @9names suggested that it probably would work on the bootloader feature too, but they hadn't tried it yet. Perhaps someone could check if it works? It might be low hanging fruit.

I forgot to tag this issue in PR #246


Remove unused NIOExtras dependency

Reduce the number of dependencies to simplify the build process in apple/swift.

@swift-ci test


Add Augur (REP)

Thanks in advance!
http://coincap.io/REP
SVG from homepage: https://www.augur.net/img/brandmarks/logo.svg
Brand Color: #553580

Well, REP is there.

Whoops how'd I miss that. Sorry!


Removed admin.autodiscover() call

Fixes #16
See note "Changed in Django 1.7":
https://docs.djangoproject.com/en/1.7/ref/contrib/admin/#discovery-of-admin-files
And latest stable docs:
https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#discovery-of-admin-files

@fmalina Thanks! Do you know why the Travis build is failing?

Old versions of Django in the .travis.yml config.

On 4 Apr 2016, at 08:42, Bruno Renié<EMAIL_ADDRESS>wrote:
@fmalina Thanks! Do you know why the Travis build is failing?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub

Afaict all django versions are failing, not just old ones.

This was completed in 4c3e2679f3b14102fbb2aad3082a790cbed7ca94.


[Question]: Handling of Over-Length Chunks in VectorStoreIndex

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
I am using a VectorStoreIndex, and my embedding model has a max token length of 512. However, my chunk size is set to 1024. I would like to know how the system handles chunks that exceed the maximum length of 512 tokens. Are the excess tokens simply truncated, or is there another method employed to manage this situation?

I depends on the embed model. Huggingface will truncate, others might error out

It depends on the embed model. Huggingface will truncate, others might error out

So, to achieve the best results, should we set the chunksize to be smaller than the max length of the embedding model we're using? This way, we can ensure that each text chunk is within the model's processing limits@dosubot


Add UltraCMTask

Hi here! For these model specific tasks I'm not so sure we should add support straight away, also would be nice to sync with PairRM as @plaguss is currently working on that 😀

See comment in the related PR


files in /etc/ld.so.conf.d/ contain wrong paths

System: openSUSE Tumbleweed, but should apply to SUSE too
During installation, ROCm packages will create files in /etc/ld.so.conf.d/, for example:
/etc/ld.so.conf.d/hsa-rocr-dev.conf
This file points to a nonexistent location:
$ cat hsa-rocr-dev.conf
/opt/rocm/hsa/lib

/opt/rocm doesn't exist anymore, since all rocm stuff is in versioned folders like /opt/rocm-3.5.1 now.

The installation guide tells us we can install the entire package, or a number of components, in a number of ways. If you install rocm-dkms, or rocm-dev, you're installing the complete package, and it will create the symlink /opt/rocm by itself. If you install some components, you can for instance just install rocm-opencl, it won't create /opt/rocm. In this case you'll have to create it yourself. You can install different versions of ROCM as well. If you do this, you'll also have to create /opt/rocm, and point it to the version you want to use.
In short, /opt/rocm should exist, or you'll have to create it yourself.

Thanks, I installed rocm-dev and it created the symlink.


Nice to have: mini side bar menu

To have the option to transform the menu to mini menu bar with Icons

@lenamtl
You can look at this example.
http://elk.onokumus.com/app-side-is-inverse-is-mini.html


What is ∀?

...And other symbols found in http://enigma.media.mit.edu/enigma_full.pdf ?

It usually means for all. A backwards 'E' means for some or there exists.
For a set S = { s1, s2, s3 ..., sn }:
For all <stmt> in S can be represented as stmt(s1) AND stmt(s2) AND stmt(s3) AND ... AND stmt(sn)
For some <stmt> in S can be represented as stmt(s1) OR stmt(s2) OR stmt(s3) OR ... OR stmt(sn)
Here's the code I would propose:
/*
elements: a set (Array) of things
predicate: a function that takes one or more things from elements and returns true or false
*/
function forAll (elements, predicate) {
  return elements.every(predicate);
}

//And for backwards 'E' (existence)
function forSome (elements, predicate) {
  return elements.some(predicate);
}

It's nice that we can simply use functions already provided by JS! (Although it might be easier to do others in Haskell :sunglasses:)
Any other specific ones you want explained?

You should pull-request this so it's included in the main list.

Programmers will generally think of the existential quantifier ∃ ∃ as "functional any."
Because JavaScript is required by law to get nothing right ever, JavaScript calls this some.
var isOdd = function(X) { return (x%2); },
      Example = [2,4,6,7];

window.alert(Example.some(isOdd));

Working on a PR now... plan to push in the next few days. I hope to include Set notation/theory as well.
@daveloyall I saw some statistical distribution notation in that article you shared. Would you like that explained as well?

@LOZORD sure, though I don't suggest prioritizing it on my behalf.  That paper was just something I had on my screen at the moment I discovered this math-as-code project.  ...There was some other paper that I care more about, I'll try to find it.  Something like "Category Theory for Computer Scientists".  Using this project, perhaps we can turn that paper into "Category Theory for Industry Programmers". :)

\Forall i \in X: Y(i) can be
for i in X:
    assert Y(i)


Refactor unify

who think this was a good name for branch?
Absolutely toxic

who think this was a good name for branch? Absolutely toxic

Apparently I'm toxic :/


feat: adding mddl_xx series of macros (and tests).  Closes #166

:tada: This PR is included in version 4.6.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


squid:S3027 - String function use should be optimized for single characters

This pull request is focused on resolving occurrences of Sonar rule
squid:S3027 - String function use should be optimized for single characters.
This pull request removes technical debt of 5 minutes.
Please let me know if you have any questions.
George Kankava

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

lgtm. this has been merged.


I can´t set the connection string in the DbContextOptionsBuilder or DbContextOptionsBuilder in a windows class library project

In the previous version I used the next code to configure my connection string, loggin, etc.
In the current version I can´t access to UseSqlServer to set my connectionstring and add the logger factory. How can I solve this?
Steps to reproduce
Create a Library Class in 4.7.1
MaldivasLoggerFactory mflp = new MaldivasLoggerFactory();
var optionsBuilderMain= new DbContextOptionsBuilder();
optionsBuilderMain.UseSqlServer(connectionString);
optionsBuilderMain.UseLoggerFactory(mflp);
return new MaldivasAccountContext(optionsBuilderMain.Options);

Further technical details
EF Core version: (found in project.csproj or packages.config)
Database Provider: Sql Server 2016
Operating system: Windows 10 Pro
IDE: Visual Studio 2017 15.7.3)

Do you reference the SQL server provider package?

No @ErikEJ!!!!, thank you very much. Do you know  what is the difference and how to use DbContextOptionsBuilder for the same configuration?


Fixed #99999 -- Added a shortcut function to make toast.

Completing the Writing your first patch for Django tutorial as apart of the Djangonaut Space Application - 2024 Session 1 application.

Sorry!
Did not mean to open this to django/django - have moved the PR here https://github.com/corno93/django/pull/1
Closing this
Thanks


DC needs API key!

Hi, we connected on Slack last week. If you guys need anything else, let me know


Create Day 1 - Best practices for supporting developers to contribute…

Add Day 1 - Best practices for supporting developers to contribute to innersource notes
Signed-off-by: Jonas van den Bogaard<EMAIL_ADDRESS>Signed-off-by: Jonas van den Bogaard<EMAIL_ADDRESS>

These notes are already added by Ana in https://github.com/todogroup/ospology/commit/85c26776e3080f699867a12626e46ab7680c1b97


Navbar

Describe the feature
Hey, I want to add some gradient in navbar background and to make it sticky, It will give a good look to Home.we can also change Text colour.
Add ScreenShots
We can add background to navbar and can change text color to make it attractive and can make navbar sticky to make home look better
Record

[X] I agree to follow this project's Code of Conduct
[ ] I'm a GSSOC'23 contributor
[X] I want to work on this issue

Hello I want to change the background which doesn't respond on switching to light mode


Add AdaBelief optimizer

Description
Fixes #2203 by adding AdaBelief optimizer. Project page, arXiv, GitHub
Although @juntang-zhuang has an official implementation at juntang-zhuang/Adabelief-Optimizer, but it was heavily based on tensorflow_addons/optimizers/rectified_adam.py, and we only modified the core algorithm part.
So we decided to contribute this optimizer to leverage the friendly API from addons, with the hope that it can help anyone who is struggling for training a neural network.
Type of change

[ ] Bug fix
[ ] New Tutorial
[ ] Updated or additional documentation
[ ] Additional Testing
[ ] New Activation and the changes conform to the activation contribution guidelines
[ ] New Callback and the changes conform to the callback contribution guidelines
[ ] New Image addition and the changes conform to the image op contribution guidelines
[ ] New Layer and the changes conform to the layer contribution guidelines
[ ] New Loss and the changes conform to the loss contribution guidelines
[ ] New Metric and the changes conform to the metric contribution guidelines
[x] New Optimizer and the changes conform to the optimizer contribution guidelines
[ ] New RNN Cell and the changes conform to the rnn contribution guidelines
[ ] New Seq2seq addition and the changes conform to the seq2seq contribution guidelines
[ ] New Text addition and the changes conform to the text op contribution guidelines

Checklist:

[x] I've properly formatted my code according to the guidelines

[x] By running Black + Flake8
[ ] By running pre-commit hooks

[x] This PR addresses an already submitted #2203  issue for TensorFlow Addons
[ ] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[ ] This PR contains modifications to C++ custom-ops

How Has This Been Tested?
Unit tests for AdaBelief, the results are compared with numpy update using the same algorithm.

I think It is a little bit early for this. See https://github.com/tensorflow/addons/issues/2194

Thank you for your feedback. I think AdaBelief would be a good choice for training because it uses curvature information like an ideal optimizer, which makes it more intuitively reasonable. Once addons decides to add this feature, I will help maintain it.

Is that currently we have just a single citation https://github.com/tensorflow/addons/issues/2203#issuecomment-724610801

@bhack @cryu854 will it merge ?

@dathudeptrai I think it depends on the usage rate by community and the number of citations. Currently, please use juntang-zhuang/Adabelief-Optimizer.

isn't this done?

Yes