validation error for CompletionRequest

Describe the bug
I encountered an error when running the docker container for amd64. The main part of the error is as follows: "WARNING ❌ Failed on pvlib__pvlib-python-i1603: 1 validation error for CompletionRequest
stop
Input should be a valid list [type=list_type, input_value='', input_type=str]
For further information visit https://errors.pydantic.dev/2.6/v/list_type" After this, it attempts to start over but fails again.
Steps/Code to Reproduce
docker run --rm -it \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /root/keys.cfg:/app/keys.cfg \
  --platform=linux/amd64 \
  klieret/swe-agent-run:latest \
  python run.py --image_name=klieret/swe-agent:latest \
  --model_name mixtral8x7b \
  --data_path https://github.com/pvlib/pvlib-python/issues/1603 \
  --config_file config/default_from_url.yaml --skip_existing=False

Expected Results
No error thrown and it working fine
Actual Results
INFO     💽 Loaded dataset from https://github.com/pvlib/pvlib-python/issues/1603
DEBUG    Starting container with command: docker run -i --rm --name klieret-swe-agent-latest-5101df22cc klieret/swe-agent:latest /bin/bash -l -m
INFO     🌱 Environment Initialized
INFO     ▶  Beginning task 0
INFO     Trying to clone from non-mirror...
WARNING  install_environment is set to True, but the data path is a GitHub URL. Skipping conda environment installation.
INFO     Initializing agent settings for container 7bb69df00f4ccf653e8699a8366d1121ab65906e481bf55142c79e6260fd6bc7
2024-04-08 06:46:23,320 - api_models - INFO - Resetting model stats
INFO     SYSTEM (primary)
         SETTING: You are an autonomous programmer, and you're working directly in the command line with a special interface.

         The special interface consists of a file editor that shows you 100 lines of a file at a time.
         In addition to typical bash commands, you can also use the following commands to help you navigate and edit files.

         COMMANDS:
         open:
           docstring: opens the file at the given path in the editor. If line_number is provided, the window will be move to include that line
           signature: open <path> [<line_number>]
           arguments:
             - path (string) [required]: the path to the file to open
             - line_number (integer) [optional]: the line number to move the window to (if not provided, the window will start at the top of the file)

         goto:
           docstring: moves the window to show <line_number>
           signature: goto <line_number>
           arguments:
             - line_number (integer) [required]: the line number to move the window to

         scroll_down:
           docstring: moves the window down {WINDOW} lines
           signature: scroll_down

         scroll_up:
           docstring: moves the window down {WINDOW} lines
           signature: scroll_down

         create:
           docstring: creates and opens a new file with the given name
           signature: create <filename>
           arguments:
             - filename (string) [required]: the name of the file to create

         submit:
           docstring: submits your current code and terminates the session
           signature: submit

         search_dir:
           docstring: searches for search_term in all files in dir. If dir is not provided, searches in the current directory
           signature: search_dir <search_term> [<dir>]
           arguments:
             - search_term (string) [required]: the term to search for
             - dir (string) [optional]: the directory to search in (if not provided, searches in the current directory)

         search_file:
           docstring: searches for search_term in file. If file is not provided, searches in the current open file
           signature: search_file <search_term> [<file>]
           arguments:
             - search_term (string) [required]: the term to search for
             - file (string) [optional]: the file to search in (if not provided, searches in the current open file)

         find_file:
           docstring: finds all files with the given name in dir. If dir is not provided, searches in the current directory
           signature: find_file <file_name> [<dir>]
           arguments:
             - file_name (string) [required]: the name of the file to search for
             - dir (string) [optional]: the directory to search in (if not provided, searches in the current directory)

         edit:
           docstring: replaces lines <start_line> through <end_line> (inclusive) with the given text in the open file. The replacement text is terminated by a line with
         only end_of_edit on it. All of the <replacement text> will be entered, so make sure your indentation is formatted properly. Python files will be checked for
         syntax errors after the edit. If the system detects a syntax error, the edit will not be executed. Simply try to edit the file again, but make sure to read the
         error message and modify the edit command you issue accordingly. Issuing the same command a second time will just lead to the same error message again.
           signature: edit <start_line>:<end_line>
         <replacement_text>
         end_of_edit
           arguments:
             - start_line (integer) [required]: the line number to start the edit at
             - end_line (integer) [required]: the line number to end the edit at (inclusive)
             - replacement_text (string) [required]: the text to replace the current selection with

         Please note that THE EDIT COMMAND REQUIRES PROPER INDENTATION.
         If you'd like to add the line '        print(x)' you must fully write that out, with all those spaces before the code! Indentation is important and code that is
         not indented correctly will fail and require fixing before it can be run.

         RESPONSE FORMAT:
         Your shell prompt is formatted as follows:
         (Open file: <path>) <cwd> $

         You need to format your output using two fields; discussion and command.
         Your output should always include _one_ discussion and _one_ command field EXACTLY as in the following example:
         DISCUSSION
         First I'll start by using ls to see what files are in the current directory. Then maybe we can look at some relevant files to see what they look like.
         ```
         ls -a
         ```

         You should only include a *SINGLE* command in the command section and then wait for a response from the shell before continuing with more discussion and commands.         Everything you include in the DISCUSSION section will be saved for future reference.
         If you'd like to issue two commands at once, PLEASE DO NOT DO THAT! Please instead first submit just the first command, and then after receiving a response you'll         be able to issue the second command.
         You're free to use any other bash commands you want (e.g. find, grep, cat, ls, cd) in addition to the special commands listed above.
         However, the environment does NOT support interactive session commands (e.g. python, vim), so please do not invoke them.
INFO     DEMONSTRATION:
         trajectories/demonstrations/replay__marshmallow-code__marshmallow-1867__default__t-0.20__p-0.95__c-2.00__install-1___install_from_source/marshmallow-code__marshma         llow-1867.traj
INFO     🤖 MODEL INPUT
         We're currently solving the following issue within our repository. Here's the issue text:
         ISSUE:
         golden-section search fails when upper and lower bounds are equal
         **Describe the bug**
         I was using pvlib for sometime now and until now I was always passing a big dataframe containing readings of a long period. Because of some changes in our
         software architecture, I need to pass the weather readings as a single reading (a dataframe with only one row) and I noticed that for readings that GHI-DHI are
         zero pvlib fails to calculate the output and returns below error while the same code executes correctly with weather information that has non-zero GHI-DHI:
         ```python
         import os
         import pathlib
         import time
         import json
         from datetime import datetime
         from time import mktime, gmtime

         import pandas as pd

         from pvlib import pvsystem
         from pvlib import location as pvlocation
         from pvlib import modelchain
         from pvlib.temperature import TEMPERATURE_MODEL_PARAMETERS as PARAMS # not used -- to remove
         from pvlib.bifacial.pvfactors import pvfactors_timeseries
         from pvlib.temperature import TEMPERATURE_MODEL_PARAMETERS

         class PV:
             def pv_transform_time(self, val):
                 # tt = gmtime(val / 1000)
                 tt = gmtime(val)
                 dd = datetime.fromtimestamp(mktime(tt))
                 timestamp = pd.Timestamp(dd)
                 return timestamp

             def __init__(self, model: str, inverter: str, latitude: float, longitude: float, **kwargs):
                 # super().__init__(**kwargs)

                 temperature_model_parameters = TEMPERATURE_MODEL_PARAMETERS["sapm"][
                     "open_rack_glass_glass"
                 ]
                 # Load the database of CEC module model parameters
                 modules = pvsystem.retrieve_sam("cecmod")
                 # Load the database of CEC inverter model parameters
                 inverters = pvsystem.retrieve_sam("cecinverter")

                 # A bare bone PV simulator

                 # Load the database of CEC module model parameters
                 modules = pvsystem.retrieve_sam('cecmod')
                 inverters = pvsystem.retrieve_sam('cecinverter')
                 module_parameters = modules[model]
                 inverter_parameters = inverters[inverter]

                 location = pvlocation.Location(latitude=latitude, longitude=longitude)
                 system = pvsystem.PVSystem(module_parameters=module_parameters, inverter_parameters=inverter_parameters,
         temperature_model_parameters=temperature_model_parameters)
                 self.modelchain = modelchain.ModelChain(system, location, aoi_model='no_loss', spectral_model="no_loss")

             def process(self, data):
                 weather = pd.read_json(data)
                 # print(f"raw_weather: {weather}")
                 weather.drop('time.1', axis=1, inplace=True)
                 weather['time'] = pd.to_datetime(weather['time']).map(datetime.timestamp) # --> this works for the new process_weather code and also the old weather file
                 weather["time"] = weather["time"].apply(self.pv_transform_time)
                 weather.index = weather["time"]
                 # print(f"weather: {weather}")
                 # print(weather.dtypes)
                 # print(weather['ghi'][0])
                 # print(type(weather['ghi'][0]))

                 # simulate
                 self.modelchain.run_model(weather)
                 # print(self.modelchain.results.ac.to_frame().to_json())
                 print(self.modelchain.results.ac)

         # good data
         good_data = "{\"time\":{\"12\":\"2010-01-01
         13:30:00+00:00\"},\"ghi\":{\"12\":36},\"dhi\":{\"12\":36},\"dni\":{\"12\":0},\"Tamb\":{\"12\":8.0},\"WindVel\":{\"12\":5.0},\"WindDir\":{\"12\":270},\"time.1\":{\         "12\":\"2010-01-01 13:30:00+00:00\"}}"

         # data that causes error
         data = "{\"time\":{\"4\":\"2010-01-01
         05:30:00+00:00\"},\"ghi\":{\"4\":0},\"dhi\":{\"4\":0},\"dni\":{\"4\":0},\"Tamb\":{\"4\":8.0},\"WindVel\":{\"4\":4.0},\"WindDir\":{\"4\":240},\"time.1\":{\"4\":\"2         010-01-01 05:30:00+00:00\"}}"
         p1 = PV(model="Trina_Solar_TSM_300DEG5C_07_II_", inverter="ABB__MICRO_0_25_I_OUTD_US_208__208V_", latitude=51.204483, longitude=5.265472)
         p1.process(good_data)
         print("=====")
         p1.process(data)
         ```
         Error:
         ```log
         $ python3 ./tmp-pv.py
         time
         2010-01-01 13:30:00    7.825527
         dtype: float64
         =====
         /home/user/.local/lib/python3.10/site-packages/pvlib/tools.py:340: RuntimeWarning: divide by zero encountered in divide
           np.trunc(np.log(atol / (df['VH'] - df['VL'])) / np.log(phim1)))
         Traceback (most recent call last):
           File "/home/user/workspace/enorch/simulator/simulator_processor/src/pv/./tmp-pv.py", line 88, in <module>
             p1.process(data)
           File "/home/user/workspace/enorch/simulator/simulator_processor/src/pv/./tmp-pv.py", line 75, in process
             self.modelchain.run_model(weather)
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/modelchain.py", line 1770, in run_model
             self._run_from_effective_irrad(weather)
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/modelchain.py", line 1858, in _run_from_effective_irrad
             self.dc_model()
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/modelchain.py", line 790, in cec
             return self._singlediode(self.system.calcparams_cec)
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/modelchain.py", line 772, in _singlediode
             self.results.dc = tuple(itertools.starmap(
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/pvsystem.py", line 931, in singlediode
             return singlediode(photocurrent, saturation_current,
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/pvsystem.py", line 2826, in singlediode
             out = _singlediode._lambertw(
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/singlediode.py", line 651, in _lambertw
             p_mp, v_mp = _golden_sect_DataFrame(params, 0., v_oc * 1.14,
           File "/home/user/.local/lib/python3.10/site-packages/pvlib/tools.py", line 364, in _golden_sect_DataFrame
             raise Exception("Iterations exceeded maximum. Check that func",
         Exception: ('Iterations exceeded maximum. Check that func', ' is not NaN in (lower, upper)')
         ```

         I have to mention that for now the workaround that I am using is to pass the weather data as a dataframe with two rows, the first row is a good weather data that
         pvlib can process and the second row is the incoming weather reading (I can also post that code if you want).

         **Expected behavior**
         PVlib should have consistent behavior and regardless of GHI-DHI readings.

         **Versions:**
         ```python
         >>> import pvlib
         >>> import pandas
         >>> pvlib.__version__
         '0.9.1'
         >>> pandas.__version__
         '1.4.3'
         ```
          - python: 3.10.6
         - OS: Ubuntu 22.04.1 LTS

         INSTRUCTIONS:
         Now, you're going to solve this issue on your own. Your terminal session has started and you're in the repository's root directory. You can use any bash commands
         or the special interface to help you. Edit all the files you need to and run any checks or tests that you want.
         Remember, YOU CAN ONLY ENTER ONE COMMAND AT A TIME. You should always wait for feedback after every command.
         When you're satisfied with all of the changes you've made, you can submit your changes to the code base by simply running the submit command.
         Note however that you cannot use any interactive session commands (e.g. python, vim) in this environment, but you can write scripts and run them. E.g. you can
         write a python script and then run it with `python <script_name>.py`.

         NOTE ABOUT THE EDIT COMMAND: Indentation really matters! When editing a file, make sure to insert appropriate indentation before each line!

         IMPORTANT TIPS:
         1. Always start by trying to replicate the bug that the issues discusses.
            If the issue includes code for reproducing the bug, we recommend that you re-implement that in your environment, and run it to make sure you can reproduce the
         bug.
            Then start trying to fix it.
            When you think you've fixed the bug, re-run the bug reproduction script to make sure that the bug has indeed been fixed.

            If the bug reproduction script does not print anything when it succesfully runs, we recommend adding a print("Script completed successfully, no errors.")
         command at the end of the file,
            so that you can be sure that the script indeed ran fine all the way through.

         2. If you run a command and it doesn't work, try running a different command. A command that did not work once will not work the second time unless you modify it!
         3. If you open a file and need to get to an area around a specific line that is not in the first 100 lines, say line 583, don't just use the scroll_down command
         multiple times. Instead, use the goto 583 command. It's much quicker.

         4. If the bug reproduction script requires inputting/reading a specific file, such as buggy-input.png, and you'd like to understand how to input that file,
         conduct a search in the existing repo code, to see whether someone else has already done that. Do this by running the command: find_file "buggy-input.png" If that         doensn't work, use the linux 'find' command.

         5. Always make sure to look at the currently open file and the current working directory (which appears right after the currently open file). The currently open
         file might be in a different directory than the working directory! Note that some commands, such as 'create', open files, so they might change the current  open
         file.

         6. When editing files, it is easy to accidentally specify a wrong line number or to write code with incorrect indentation. Always check the code after you issue
         an edit to make sure that it reflects what you wanted to accomplish. If it didn't, issue another command to fix it.

         7. It may be necessary to install the repository from source before you can run code. Please think about how to install the environment from the repository
         directory if you need to do so.

         (Open file: n/a)
         (Current directory: /pvlib__pvlib-python)
         bash-$
/usr/local/lib/python3.9/site-packages/together/legacy/complete.py:23: UserWarning: The use of together.api_key is deprecated and will be removed in the next major release. Please set the TOGETHER_API_KEY environment variable instead.
  warnings.warn(API_KEY_WARNING)
Traceback (most recent call last):
  File "/app/run.py", line 136, in main
    info, trajectory = agent.run(
  File "/app/sweagent/agent/agents.py", line 645, in run
    thought, action, output = self.forward(
  File "/app/sweagent/agent/agents.py", line 373, in forward
    thought, action, output = self.forward_with_error_check(observation, state)
  File "/app/sweagent/agent/agents.py", line 513, in forward_with_error_check
    output = self.forward_model(observation, state)
  File "/app/sweagent/agent/agents.py", line 427, in forward_model
    return self.model.query(self.local_history)
  File "/usr/local/lib/python3.9/site-packages/tenacity/__init__.py", line 289, in wrapped_f
    return self(f, *args, **kw)
  File "/usr/local/lib/python3.9/site-packages/tenacity/__init__.py", line 379, in __call__
    do = self.iter(retry_state=retry_state)
  File "/usr/local/lib/python3.9/site-packages/tenacity/__init__.py", line 325, in iter
    raise retry_exc.reraise()
  File "/usr/local/lib/python3.9/site-packages/tenacity/__init__.py", line 158, in reraise
    raise self.last_attempt.result()
  File "/usr/local/lib/python3.9/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/local/lib/python3.9/concurrent/futures/_base.py", line 391, in __get_result
    raise self._exception
  File "/usr/local/lib/python3.9/site-packages/tenacity/__init__.py", line 382, in __call__
    result = fn(*args, **kwargs)
  File "/app/sweagent/agent/models.py", line 563, in query
    completion = together.Complete.create(
  File "/usr/local/lib/python3.9/site-packages/together/legacy/base.py", line 25, in new_func
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/together/legacy/complete.py", line 28, in create
    return client.completions.create(
  File "/usr/local/lib/python3.9/site-packages/together/resources/completions.py", line 79, in create
    parameter_payload = CompletionRequest(
  File "/usr/local/lib/python3.9/site-packages/pydantic/main.py", line 171, in __init__
    self.__pydantic_validator__.validate_python(data, self_instance=self)
pydantic_core._pydantic_core.ValidationError: 1 validation error for CompletionRequest
stop
  Input should be a valid list [type=list_type, input_value='<human>', input_type=str]
    For further information visit https://errors.pydantic.dev/2.6/v/list_type
WARNING  ❌ Failed on pvlib__pvlib-python-i1603: 1 validation error for CompletionRequest
         stop
           Input should be a valid list [type=list_type, input_value='<human>', input_type=str]
             For further information visit https://errors.pydantic.dev/2.6/v/list_type
INFO     Beginning environment shutdown...
INFO     Agent container stopped

System Information
OS: Debian GNU/Linux 12 (bookworm) x86_64
Host: KVM/QEMU (Standard PC (i440FX + PIIX, 1996) pc-i440fx-7.2)
Kernel: 6.1.0-18-amd64
Uptime: 1 day, 18 hours, 10 mins
Packages: 489 (dpkg), 6 (snap)
shell: bash 5.2.15
Resolution: 1280x800
Terminal: /dev/pts/0
CPU: AMD Ryzen 9 7950X3D (6) @ 4.199GHz
GPU: 00:02.0 Vendor 1234 Device 1111
Memory: 773MiB / 11960MiB
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux

So it seems to have failed in querying the model (model.query), in particular these few lines
prompt = self.history_to_messages(history)
        completion = together.Complete.create(
            model=self.api_model,
            prompt=prompt,
            max_tokens=self.model_metadata["max_context"],
            stop="<human>",
            temperature=self.args.temperature,
            top_p=self.args.top_p,
        )

what version of the together package are you running?

I'm now working on #185 .
This is because stop requires List[str], but feed str.
https://github.com/togethercomputer/together-python/blob/main/src/together/types/chat_completions.py#L83
https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L569

But even if we fix this, another error will be occured.
together.error.InvalidRequestError: Error code: 400 - {"message": "Input validation error: `inputs` tokens + `max_new_tokens` must be <= 4097. Given: 14 `inputs` tokens and 4096 `max_new_tokens`", "type_": "invalid_request_error", "param": "max_tokens", "code": null}

This will work if we modify the max_context of Model.
https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L496

Next time we will fails with a KeyError for response. It seems like this is because output is missing from ChatCompletionResponse.
https://github.com/togethercomputer/together-python/blob/main/src/together/types/chat_completions.py#L113-L127
https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L574-L576
It looks like we can directly access choices and usage instead.

This series of errors is due to big changes that were introduced in the new major version released last week. If you want to use it right away, rolling back the together version to v0.2.11 might work well.

I'm now working on https://github.com/princeton-nlp/SWE-agent/issues/185 .
This is because ChatCompletionRequest.stop requires List[str], but feed str.
https://github.com/togethercomputer/together-python/blob/main/src/together/types/chat_completions.py#L83
https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L569

thank you. yes, stop is supposed to be a List[str] on the Together API: https://docs.together.ai/reference/chat-completions

But even if we fix this, another error will be occured.
together.error.InvalidRequestError: Error code: 400 - {"message": "Input validation error: inputs tokens + max_new_tokens must be <= 4097. Given: 14 inputs tokens and 4096 max_new_tokens", "type_": "invalid_request_error", "param": "max_tokens", "code": null}
This will work if we modify the max_context of Model.
e.g. https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L496

Input token count + max_tokens needs to be less than the context length of the model. Model context lengths can be found here.
You can also set max_tokens=None to avoid the error if you don't know how many input tokens you have.

Next time we will fails with a KeyError for response. It seems like this is because output is missing from ChatCompletionResponse.
https://github.com/togethercomputer/together-python/blob/main/src/together/types/chat_completions.py#L113-L127
https://github.com/princeton-nlp/SWE-agent/blob/main/sweagent/agent/models.py#L574-L576
It looks like we can directly access choices and usage instead.
This series of errors is due to big changes that were introduced in the new major version released last week. If you want to use it right away, rolling back the Together version to v0.2.11 might work well.

Yes. v1.0.0 brought in breaking changes. Hardcoding v0.2.11 until these changes have been made to this repo would be my suggestion. v1.2.0 will have backwards compatibility to v0.2.11.
p.s. I'm a maintainer of the Together Python SDK.

@orangetin Thank you very much for providing the information! It's really helpful!
In particular, below your comment will help me fix the issue quickly!

You can also set max_tokens=None to avoid the error if you don't know how many input tokens you have.


UnDelete issue #2094

"Open Source" should be open. Deleting issues from public view is super shady and unethical.
You can't just brush an issue under the rug and expect it to go away, especially when other people have raised the same issue too over multiple years.

Quite honestly, the issue was deleted for your benefit.  It is extremely inappropriate and entitled to push volunteers to do more work.  You aren't a paying customer, you are using a free piece of software that was only possible due to the charity of our families and respective companies.  Comments like "You're just being lazy" are unnecessarily antagonistic and are exactly why many open source developers left the scene.  Good luck and hopefully you will reconsider your attitude in future interactions with the open source community.


Add TypeScriptReact JSX expanding support

Problem
At the moment it need to add some user settings to emmet after install it to proper jsx expanding in TypeScriptReact syntax, but it can be done out of the box, this PR do that :)
Without jsx extending:

With jsx extending:

https://github.com/sergeche/emmet-sublime/pull/705#issue-371819086


Cannot use in (offline) tests

In test mode (at least in environments without networking), the <script> tag that this addon injects won't run and Stripe won't be defined. That means Stripe.setPublishableKey won't exist and the initializer will fail.
The smallest change I can think of that would work (which I've used locally successfully) is
// app/services/stripe.js
function createToken (card) {
  Ember.assert("Cannot create Stripe token in test environment", config.environment !== 'test');
  // ...
}

// app/initializers/stripe-service.js
export function initialize() {
  if (config.environment === 'test') { return; }
  // ...
}

This isn't perfect, but it's pretty good. I end up stubbing out stripe.createToken whenever I need to actually run that function, with without a standard stubbing library, I can't think of a good way of doing this here.

An alternative would be to include a version of stripe.js in this library and use the following pattern:
<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
<script>
(function() {
if (typeof Stripe === 'undefined') {
  var headTag = document.getElementsByTagName("head")[0];
  var jqTag = document.createElement('script');
  jqTag.type = 'text/javascript';
  jqTag.src = 'path/to/jquery.js';
  jqTag.onload = myJQueryCode;
  headTag.appendChild(jqTag);
}
}());
</script>

Unfortunately, I don't know of a way to get path/to/jquery.js in the Broccoli tree without also making this a Bower component.

Thanks @jamesarosen, we have had no issues with headless tests. Does this happen with offline tests, or it happens even when you have connection? If it's offline then, you would indeed get errors since Stripe is only meant to be included from Stripe's servers, we don't bundle the source of the library for this reason.
We've thought about mocking Stripe in test environment, but have not done it yet. I may take a stab at it this week to make your life easier.

I was seeing the problem in my headless PhantomJS tests, but not in the Chrome tests. It could have been an offline-only problem that was masked by caching in Chrome.
I do develop in places without a network, though. I'm happy with any solution -- bundling, stubbing, or simply aborting the initializer -- that works in that situation.

In the meantime, I've added
import config from '../config/environment';

// The ember-stripe-service add-on relies on Stripe being
// defined. In offline mode, we won't have fetched the real
// stripe.js, so Stripe will be undefined and the add-on's
// initializer will break.
//
// See https://github.com/ride/ember-stripe-service/issues/12
export default {
  name: 'fake-stripe',
  before: 'stripe',

  initialize: function() {
    if (config.environment !== 'test') { return; }
    if (typeof Stripe !== 'undefined') { return; }

    window.Stripe = {
      setPublishableKey: function() {},
      createToken: function() {}
    };
  }
};

so we can continue development. I'm looking forward to seeing what you come up with :)

Hey @jamesarosen I'll be having a look at this over the weekend, suddenly got quite busy this week.

+1

@buritica I'm running into this problem as well. @jamesarosen 's fake-stripe fix worked well for our project running CI on Codeship. Any ballpark estimate on a proper fix?

Hey @ryanlitalien, haven't had a lot of time to dedicate to this add-on, will probably look at it over the next couple weeks.

@buritica Thanks, subscribed :)

@jamesarosen I've used the pattern you used in the past to fake the service out in tests (which also allows me to potentially hook into the interface to make even testing receipt of certain data testable).
Do you think this needs to be part of the library or left as an implementation detail to the developer (with maybe some usage documentation explaining what to do)?

I know some libraries will provide test support in their addon/ folder and include those files in the broccoli tree only in the test environment. You could provide an addon/fake-stripe.js without autoinstalling it.

I'd suggest that the initializer should also be robust to Stripe.js failing to load. If Stripe's JS CDN goes down for whatever reason, that shouldn't also take my entire app with it.

Any update on this?

lol sorry, was supposed to comment. I think a possible implementation can be a follow up on  https://github.com/code-corps/ember-stripe-service/pull/58

https://github.com/code-corps/ember-stripe-service/pull/59 adds the ability to configure mocking in testing mode.


Uncaught TypeError: Cannot read property 'typeKey' of undefined

https://github.com/kurko/ember-localstorage-adapter/pull/121 seems to create problems for apps running ember-data 1.0.0-beta.16.1. I get this exception after upgrade from 0.5.3 to 0.5.4:
Uncaught TypeError: Cannot read property 'typeKey' of undefined
Stack trace:
ember$data$lib$system$store$$Service.extend.modelFor
ember$data$lib$system$store$$Service.extend.serializerFor
DS.LSAdapter.DS.Adapter.extend.createRecord
ember$data$lib$system$store$$_commit
...

I guess the typeKey/modelName changes are related to http://emberjs.com/blog/2015/05/21/ember-data-1-0-beta-18-released.html, but as stated there:

Accessing the typeKey property should still work, but will trigger deprecation warnings.

+1, having the same issue.

Just an update... this was fixed for me by upgrading to ember-data 1.13.1.

@simonihmig can you try upgrading ED and confirm?

Won't be able to do that for our app in question very soon, as the upgrade to 1.13.x is planned towards the end of the month...


CLOUD-53847 introduce storage types for ARM

@doktoric @biharitomi

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/2230/

LGTM


Logo design

The current logo for Periodia needs a redesign.
There is also a favicon missing 16x16 or 32x32.
The current icon is 192x192 under folder /img
The current logo is 659x121 under folder /img

Logo proposal

Hi :)
Thank you for your logo proposal.
I think it looks great with those bricks and that circular form, I do think it would fit in.
I just noticed that the color is different between the files I have saved in the folder.

The color should be #FFAA00 to match the links in the app:

The icon on in the phone looks like this for the moment:

Maybe if you move the circular P to the center or something, what do you think?


Fix some warnings on 0.4

Mostly from the ntuple change

Coverage decreased (-4.15%) to 60.54% when pulling 4ca2a474617611aacec30d7cba7574b3318bd8a6 on teh/warnings into 8bfaad0502f2fb48d155c894cc20254a8919ad75 on master.

Puzzling travis failure at https://travis-ci.org/timholy/Images.jl/jobs/65092149#L347. Any OSX user have an idea what's up?

Tests pass locally for me just now (with latest tagged Images and a 4-day old master of Julia)
That is a weird one, I don't know how that one function could be missing (and I'm pretty sure it's not the first CGfoo that's called, so I doubt it's a library problem)
Hope it just goes away on it's own.  Unfortunately, I'll be laying low until after early July so I can't really look into this (deadlines looming).
On Jun 2, 2015, at 10:07 AM, Tim Holy <notifications<EMAIL_ADDRESS>wrote:
Puzzling travis failure at https://travis-ci.org/timholy/Images.jl/jobs/65092149#L347. Any OSX user have an idea what's up?
—
Reply to this email directly or view it on GitHubhttps://github.com/timholy/Images.jl/pull/305#issuecomment-107985785.

Ronald S. Rock, Jr., Associate Professor
Dept. of Biochemistry and Molecular Biology, The University of Chicago
GCIS W240, 929 E. 57th St.
Chicago, IL 60637   USA
+1<PHONE_NUMBER> (w), +1<PHONE_NUMBER> (f)
rrock<EMAIL_ADDRESS>

Coverage decreased (-4.15%) to 60.54% when pulling 019525ebf843e47956aa96e3aeed3116c6edff04 on teh/warnings into 8bfaad0502f2fb48d155c894cc20254a8919ad75 on master.

I'll merge this, since it seems unrelated. If this continues after 0.4 is released and 0.3 testing stops, we may have to stop testing OSX.


feat: port FieldTheory.Finiteness

bors merge

I guess the conflict would be with #3372.

bors merge

bors merge


add theia-sfm

http://www.theia-sfm.org

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/30561736-add-theia-sfm?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github).

Already openned: https://github.com/ruslo/hunter/issues/276


factor out .size() checks in GetDataType()

GetDataType() is used by code that reads from text files, to determine whether file is a CSV, TSV, or LibSVM format.
cppcheck raises the following warning about that function's implementation (#4359):
src/io/parser.cpp:195:27: style: Condition 'lines.size()>1' is always true [knownConditionTrueFalse]
  } else if (lines.size() > 1) {
                          ^
src/io/parser.cpp:187:20: note: Assuming that condition 'lines.size()==1' is not redundant
  if (lines.size() == 1) {
                   ^
src/io/parser.cpp:195:27: note: Condition 'lines.size()>1' is always true
  } else if (lines.size() > 1) {
                          ^

This is pointing out, correctly, that the code in that function has a structure like this pseudo code
if lines.size() == 0:
    do_something()
elif lines.size() == 1:
    do_something_else()
elif lines.size() > 1:
    do_another_thing()

And that by the time the code reaches that third condition, it must be true that lines.size() > 1 (since .size() cannot be negative and has already been determined to not be 0 or 1).
This PR removes that check, and also takes the opportunity to remove duplicate calls to .size(). Note that I didn't replace this lines.empty() call with num_lines == 0 because .empty() is a special method that is guaranteed to be O(1).
https://github.com/microsoft/LightGBM/blob/a926d4fe939118b6377455220e44ca9ded5b964e/src/io/parser.cpp#L180

LGTM, nice improvement!

thanks! cppcheck proving pretty useful so far!
@danmar thanks to you and other contributors there for all your hard work 🤩


CHAOS-6317 Specify not supporting bare metal

Specify not supporting bare metal

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66c5be70de9c2e2a41035b6b--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66c5c09aad130000967d94e3--harness-developer.netlify.app


[WIP] Add IndoorEnabledProperty

ref #63

I couldn't Run in my physical Device on iOS and Android, so Could you check run sample program.


Fix panic button

Still some issues to solve:

[ ] This error when ⚠ Stop & sell at market price
[ ] Test others

Any news on this ? Looks like crucial feature :) Thanks for your work!

Any news on this ? Looks like crucial feature :) Thanks for your work!

Hi! Sorry but I'm undergoing a pretty rough period with my studies and this feature requires a lot of debugging and improvement.
I am unable to provide an ETA at this time 😢

@ErhanKarabulut yes and no. I've took over the developemtn of the tg bot, yet the panic button is a hell lot of work and need a very large amount of work and testing. And moreover it must be bug proof as it is a really critical functionality. I'd like as much as you do to see this button working but i'm not willing for the moment to deep dive into this.

@titulebolide firtsly ,  I wish you best luck with tg bot. You are extremely right about how critical functionality it is . I await for any news.


provide "Waterfall Flexible Toolbar" of material design spec

This is a (multiple allowed):

[x] enhancement

Framework7 Version: 2

Please provide

Waterfall Flexible Toolbar
Waterfall Toolbar Fix Last Row
Waterfall Flexible Toolbar with Custom Style

from the official "Material Design Spec":

https://material-components-web.appspot.com/toolbar/index.html
https://material.io/components/web/catalog/toolbar/

The different kinds of "Toolbars" can be enabled by adding css class within toolbar, for example:

.toolbar-flexible
.toolbar-fix-row
.toolbar-flexible-style

Ref: https://github.com/framework7io/framework7/issues/1806


Add image as symbolization

Since we can't make a screenshot of the module, it would be nice to have an image as an symbolization for the new module list I'm working on. I created this image for this module.

I think that the module now looks quit nice on the new module list :rocket: :smiley:


how to use multi thread?

import STPyV8
import threading

class Global(STPyV8.JSContext):
    def log(self, *args):
        print(*args)

def run():
    with STPyV8.JSIsolate() as isolate:
        with STPyV8.JSContext(Global()) as ctx:
            # ctx.eval("""function log(){}""")
            ctx.eval("log(1+1)")

t1 = threading.Thread(target=run)
t1.start()
t2 = threading.Thread(target=run)
t2.start()
t1.join()
t2.join()

i got Process finished with exit code 11

case in test_Multithread.py not work either

Sorry for the very late response but this a very busy period for me.
I was aware of the threading issue and that's the reason why some tests are currently disabled.
By the way I tested your code and can reproduce the issue using version <IP_ADDRESS> but the problem just disappears using version <IP_ADDRESS>. Can you please give it a try using more recent STPyV8 releases and let me know what you observe?
Thanks!

ok, i use it in windows, i will compile a new version and test it

v9.0.257.29 also the same problem, i remember, i did't compile success on windows before, this issue was test on ubuntu :)

when i set  DISTUTILS_DEBUG=1, it show
distutils.errors.CompileError: command ['C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\HostX86\x64\cl.exe', '/c', '/nologo', '/Ox', '/W3', '/GL', '/DNDEBUG', '/MD', '-DBOOST_PYTHON_STATIC_LIB', '-IE:\xxx\ref_project\v8\v8\include', '-ID:\local\boost_1_76_0', '-IC:\Users\Ronaldinho\.pyenv\pyenv-win\versions\3.9.0\include', '-IC:\Users\Ronaldinho\.pyenv\pyenv-win\versions\3.9.0\include', '-IC:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\ATLMFC\include', '-IC:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\include', '-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um', '-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt', '-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared', '-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um', '-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt', '-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt', '-ID:\local\boost_1_76_0', '/EHsc', '/Tpsrc\Engine.cpp', '/Fobuild\temp.win-amd64-3.9\Release\src\Engine.obj', '/O2', '/GL', '/MT', '/EHsc', '/Gy', '/Zi'] failed with exit code 2

Ah ok I thought you were successful in compiling previous releases on Windows and I was going to ask to share the steps you took to do that. PyV8 used to support Windows but I never tested STPyV8 on such platform. I would really like to automate Windows builds through Github Actions too so please feel free to share any ideas and tips

i try to compile in VisualStudio, got something wrong similarly, it show error was in v8.h, i guess really reason was not, maybe just a simple issue cause it stop compile, sorry i am not  familiar with c++.

Ah ok I thought you were successful in compiling previous releases on Windows and I was going to ask to share the steps you took to do that. PyV8 used to support Windows but I never tested STPyV8 on such platform. I would really like to automate Windows builds through Github Actions too so please feel free to share any ideas and tips

yeah i once thought i compile success on windows too, when i meet the error again i rember not ...


[Button] Make text visible in loading button and add without text option

This fixes #2271, but breaks backwards compatibility.
So, maybe this should be implement the other way around, with ".with .text", but I felt overwriting color with the !important is already bad practice.

@jlukic  Can you have a look? I might have to revise it...


Extend post category features.

-- Completed Tasks:

Create Post -> Should show all the existing category----(done)
Add additional property in Category table to set property as "Show In Homepage Menu"----(done)
Add button/checkbox to set this value in admin panel----(done)
Only Admin can update this----(done)

-- UI changes:

Show/Hide button added in Categories list page

Dropdown list added for categories in post create page


Update EventDetailView to display set of attendees

Description
Update EventDetailView to display set of attendees
Issue Type
Enhancement
Acceptance Criteria

[ ] Ensure that EventDetailView can dynamically update the attendees

This mainly has to do with #92 not updating the list of attendees for an event.
update and event commands will update the attendee list.


bug: error while trying to get appUpdateInfo

Capacitor Doctor
💊   Capacitor Doctor  💊

Latest Dependencies:

  @capacitor/cli: 3.1.2
  @capacitor/core: 3.1.2
  @capacitor/android: 3.1.2
  @capacitor/ios: 3.1.2

Installed Dependencies:

  @capacitor/cli: 3.1.1
  @capacitor/android: 3.1.1
  @capacitor/core: 3.1.1
  @capacitor/ios: 3.1.1

[success] iOS looking great! 👌
[success] Android looking great! 👌

I was trying this plugin (^1.0.0-alpha.3) with the latest version of Capacitor v3 and when trying to call the AppUpdate.getAppUpdateInfo() I get the following error message:
{message: "Required app information could not be fetched", errorMessage: "Required app information could not be fetched"}
followed by
Error: Uncaught (in promise): Error: Required app information could not be fetched i@capacitor://localhost/main-es2015.8ff1e5aae7b0a67b0188.js:1:670532
Expected behavior
I expect to get information about app/play store updates and the current version of the application
Smartphone (please complete the following information):
iPhone 12 simulator

Thank you for your request.
Does the error occur on Android or iOS?

@robingenz thanks for the quick response! I'm getting the error on iOS only. On Android I get current version: 23, available version: 0.

Would you like to give me your CFBundleIdentifier?
If you do not want this, please go to the following URL and paste the output here:
https://itunes.apple.com/lookup?bundleId=YOUR_CF_BUNDLE_IDENTIFIER

Please replace YOUR_CF_BUNDLE_IDENTIFIER with your CFBundleIdentifier.
By the way: You should make sure that the device has an internet connection when you call getAppUpdateInfo.
Regarding Android: You should be able to test this plugin using internal app sharing. If there are any problems, check out this comment. If this does not help you, please create an additional issue.

The output im getting for
https://itunes.apple.com/lookup?bundleId=ch.rro.capacitor

is
{
 "resultCount":0,
 "results": []
}

I always have an internet connection when trying the above code and tried running the app from XCode as well as internal Testing on Testflight, but I haven't been able to debug the app if its coming from a Testflight installation.

The response should include at least one result (example).
Is it possible that your iOS app is only available in certain countries?
In fact, it sounds like the following problem: https://stackoverflow.com/questions/14640834/itunes-lookupbundleid-method-is-not-working-for-my-app
In that case, implementing the following feature would solve your problem: #12

Hi robingenz
I've stumbled across this issue before and tried to add the country code like in the suggestion with the same empty result:
https://itunes.apple.com/ch/lookup?bundleId=ch.rro.capacitor
According to this newer issue Apple removed the way they handle country codes so I also tried this URL with the same result:
https://itunes.apple.com/lookup?bundleId=ch.rro.capacitor&country=ch
The app should be available in all countries (as stated on the app store connect website). However it is still in Testflight, does this lookup URL work for apps that have not been officially released yet?

As far as I know, the app has to be officially released to get information via the iTunes Lookup API.
Unfortunately, I don't know any way to do this with Testflight.
I will close this issue for now.
Please test it again once the app is officially released.
If the problem still persists, please let me know so I can reopen the issue.

@robingenz that is also the only information about it that I was able to gather. Will get back to you once I tested in production. Thanks a lot for the support and great work with this plugin!

I just want to say, I encountered this same exact issue for the past 2 days. First time building my app on iOS, android is fine. Never bothered to look into the plugins I'm using until just now. Zero-ed in on this plugin and realized this isn't deployed yet.
Would be nice if we could include a note or something in the README regarding this error message.


Catch up latest (v1.1) View.updateIndex() implementation

Needs to implement iOS viewsInGroup and updateIndexes: (NSArray*)views to support prefix view indexing for both SQLite and ForestDB

This ticket is blocked by https://github.com/couchbaselabs/cbforest/issues/47


Be mindful of runtime-private data structures

This library exposes a number of runtime-private data structures that may change in a future version of the Swift runtime, particularly the layou of runtime instantiated metadata structures such as Existential/Tuple/Metatype/FunctionTypeMetadata and the object layout of KeyPath instances. In fact, if you try to build this library with an asserts-enabled compiler, it will trip an assertion failure for using unsupported builtins on the resilient AnyKeyPath class. If you want to experiment with those, that's great, but you might want to factor parts of the codebase that use these runtime private structures into a separate package that is clearly marked experimental, so that people using this library do not inadvertently ship apps that will break on future Swift runtimes.

layou of runtime instantiated metadata structures such as Existential/Tuple/Metatype/FunctionTypeMetadata and the object layout of KeyPath instances.

Could you elaborate on how those metadata structures could change in the future? Is it simply the fact that they aren't emitted by the compiler that their layout can be changed freely?
I just read the ABI concerns portion of the KeyPath doc about how only the pattern is ABI, and the object layout can be changed freely which makes sense to me.

In fact, if you try to build this library with an asserts-enabled compiler, it will trip an assertion failure for using unsupported builtins on the resilient AnyKeyPath class.

This was implemented to make a mock up implementation for the Reflection.allKeyPaths APIs that @dan-zheng @rxwei and I plan to move to either the standard library or a separate module that'll ship with Swift. I was unaware that this actually hit an assertion until recently pointed out on the forums. Ideally once that's (hopefully) approved and implemented, then my builtin hackey can go away.

Thanks Joe for taking a look at this and providing concerns. Going forward, what do I need to look for when adding structures here? Do I need to ensure that the compiler emits them in a binary to be considered ABI? Is this only a concern for apps being shipped on ABI stable platforms? If someone on a Linux based platform uses this, and a newer Swift version breaks their app, they simply have to update to the newer package right? It only becomes an issue once those platforms lock down ABI? Are there any other concerns you have that I can hopefully ensure that they're dealt with?

Could you elaborate on how those metadata structures could change in the future? Is it simply the fact that they aren't emitted by the compiler that their layout can be changed freely?

Since they aren't generated by the compiler, and the compiler doesn't generate code that relies on their layout (with the exception of TupleTypeMetadata, where the compiler knows the layout of the element types and offsets array so that it can more efficiently dereference generic tuple elements), there's no ABI constraint on their layout. If we add language features in the future, we may want to change the layouts of some of these structures. For instance, existential types would be nice to represent in a more generalized way by describing the GenericContext of the dynamic type, instead of having separate special case Existential and ExistentialMetatype records for the two kinds of existentials we support today.
Similarly, for key paths, we will probably introduce new kinds of components or new subclasses in the future, or we might implement optimizations that require changing the object layout.

Thanks Joe for taking a look at this and providing concerns. Going forward, what do I need to look for when adding structures here? Do I need to ensure that the compiler emits them in a binary to be considered ABI? Is this only a concern for apps being shipped on ABI stable platforms? If someone on a Linux based platform uses this, and a newer Swift version breaks their app, they simply have to update to the newer package right? It only becomes an issue once those platforms lock down ABI? Are there any other concerns you have that I can hopefully ensure that they're dealt with?

Yes, on non-Apple platforms, there is no ABI stability, so someone upgrading their compiler would have to rebuild all their binaries regardless. The concern with ABI would be someone distributing an app or binary-only framework for an Apple OS that they expect to keep working when users upgrade their OS.

@Azoy @jckarter  does this mean that KeyPathIterable is fragile?

Yes. I’m working on moving this to the Swift project with some folks so that one doesn’t need to worry about breakage.

@Azoy that's great to hear, please let me know if I can pitch in. I've got a runtime library that I'm actively working on, so I have a little bit of experience in that area.

I've discussed this with some folks and I've come to the conclusion that I will keep some of these metadata structures within the Echo target, but I will be removing some of the experimental stuff like EchoMirror and EchoProperties (reflection keypaths is in the works in the evolution staging). Some of the solutions for things like TupleMetadata/FunctionMetadata/etc. included moving into a separate target, like Joe mentioned in the OP, namespacing them with Unstable, or even removing them entirely. I'll break down some of the reasons why I and others didn't agree on these alternatives.

Separate target:
This one might be the least bad option out of the three, however it comes at an API cost. The top level reflect() method would have to return a Metadata? because if it did come across one of the non ABI stable metadatas which is located in this separate target, it couldn't return said metadata. This isn't terrible, however it affects a lot of other APIs within Echo that I don't personally want for the library. There's also an issue with duplicated code that needs to be ported over from Echo to something like EchoUnstable, but that's not a major issue.

Unstable namespace:
While initially appealing at first, it ultimately doesn't make sense. For platforms who haven't declared ABI stability, all metadata are considered "unstable" and only having a select few be namespaced with this doesn't make sense. I could platformitize this so that only on platforms with ABI stability have this namespace, but then there's the issue of a separate API on different platforms which isn't great for user experience.

Removing them entirely:
Like using a separate target, this affects a lot of the other APIs within Echo that I don't personally want for the library. It's also worse than a separate target because then you don't have that functionality whatsoever, vs. importing an unstable target.

Instead, others have convinced me that libraries like this one should have large warning signs letting the user know that what they could be doing could break in a future Swift version. If one is deploying a Swift application on a platform that hasn't declared ABI stability, nothing should be guaranteed to work, however if they are deploying one on a platform that has, there will be select functionality that is stable and guaranteed to work across Swift versions. I will be updating documentation to indicate what is considered ABI stable and what is not across Echo along with updating the README informing users that this library does expose ABI unstable routines. Quoting one of the developers that I spoke with:

If you're going to expose unstable stuff -- the entire lib is assumed unstable -- i.e. I could not use it if I "really really have to be stable"

Ideally in the future, Swift will adopt more and powerful reflection capabilities that make more use of its runtime metadata, ultimately making libraries like this one obsolete over time.


Port qs_decomposition to Rust

The main issue is how to port the cosine-sine decomposition to rust, which currently uses scipy:
https://docs.scipy.org/doc/scipy/reference/generated/scipy.linalg.cossin.html


Exported yaml file does not have the key depends_on set after creating the stack

**Rancher Version:**1.2.0-pre4-rc6
**Docker Version:**1.12.2
**OS and where are the hosts located? (cloud, bare metal, etc):**Ubuntu, Cloud
**Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)**Single node
Environment Type: (Cattle/Kubernetes/Swarm/Mesos) Cattle
Steps to Reproduce:

Create a stack "Stack1" with depends_on key using the below yaml file:

version: '2'
services:
  web:
    image: busybox
    command: "sleep 1000"
    depends_on:
      - db
      - redis
  redis:
    image: redis
  db:
    image: postgres

The stack is created with all the 3 services. But the exported yaml file does not have depends_on key which was used while creating the stack. Exported file below:
version: '2'
services:
  db:
    image: postgres:latest
  redis:
    image: redis:latest
  web:
    command:
    - sleep
    - '1000'
    image: busybox:latest

I don't think this exists in teh API, but not sure how to support it.

@deniseschannon thinking about just adding this flag as a field to our service API object. We won't process it though in java code, but it will be present on export. Rancher-compose already knows how to handle this field, so the support for it will be just there.

We have similar logic driven by service links. Note that logic is activated on stack.activateServices, not on per individual service.activate basis:

Flag is being set when service.activate is scheduled from stack.activate services:

https://github.com/rancher/cattle/blob/060bd6b0104a21ea7221ea5ad17d5696fdb26a29/code/iaas/service-discovery/api/src/main/java/io/cattle/platform/servicediscovery/api/action/StackActivateServicesActionHandler.java#L94

Flag is supposed to be read in service.activate handler and wait for dependencies to activate first:

https://github.com/rancher/cattle/blob/060bd6b0104a21ea7221ea5ad17d5696fdb26a29/code/iaas/service-discovery/server/src/main/java/io/cattle/platform/servicediscovery/process/ServiceUpdateActivate.java#L95
The call to 2) was removed by some reason as a part of 6178227acdcbd2d1d2cb881b42e7b438ee9ae794, re-added the logic back in https://github.com/rancher/cattle/pull/2560.
To implement dependsOn, we have to:

expose dependsOn flag in the service API
Add logic to StackActivateServicesActionHandler.java to figure out dependencies based on dependsOn, similar to links - the same logic for setting the flag that ServiceUpdateActivate reads, should be re-used.
Enable the flag in the rancher compose export.

Version - 2.0 master 10/10
Still an issue

With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.


Syncing up fork

Syncing up fork

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@c906d3a). Click here to learn what that means.
The diff coverage is 0.00%.

@@            Coverage Diff            @@
##             master       #5   +/-   ##
=========================================
  Coverage          ?   49.80%
  Complexity        ?      325
=========================================
  Files             ?       45
  Lines             ?     2038
  Branches          ?      279
=========================================
  Hits              ?     1015
  Misses            ?      921
  Partials          ?      102

Impacted Files
Coverage Δ
Complexity Δ

.../compatibility/avro14/Generate14TestResources.java
0.00% <0.00%> (ø)
0.00 <0.00> (?)

.../compatibility/avro15/Generate15TestResources.java
0.00% <0.00%> (ø)
0.00 <0.00> (?)

Continue to review full report at Codecov.

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


fix: bugs related to tags

Fixes the following:

Prevents creating tags which are whitespace
Prevents adding duplicate tags to the dialog
Prevents adding more than 20 tags which was the limit on the server
Ensures "Tags" label stays at top even though tags list may span multiple rows
Disable spellcheck since most tags may not be words like "myTag" or "yourTag"
Fixes incorrectly named error when you create a train dialog from "DELETE" to "CREATE"

In order to show people why the submission doesn't work due to duplicate we had to show an error message so that was added to the right since.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


MPL drawer should expose cregbundle as a parameter

In the spirit of https://github.com/Qiskit/qiskit-terra/issues/2797, PR https://github.com/Qiskit/qiskit-terra/pull/4274 exposes cregbundle as a parameter for circuit drawing.
MPL should use that parameter and deprecate the style dict key.

@1ucian0, I can do this for mpl. It would help if #4264 was reviewed and merged if appropriate, so to use that as a base.

#4264 includes many things and some of them need some discussion. It would be great if fixing this issues is an independent PR. If possible, of course.

Agreed. Since bundle on is the default here, I think it's only a few lines of code to move from the style dict to a kwarg for this. I can do this if you'd like. I assume we maintain bundle on as default in this drawer, even though I think I read elsewhere that you wanted it off for the text drawer.

... only a few lines of code to move from the style dict to a kwarg for this.

But keep it in the style dict with a deprecation warning. We need to give some time to users to move the option to the parameter. Therefore, if defined in the style dict, raise a warning and override the parameter.

I assume we maintain bundle on as default in this drawer, even though I think I read elsewhere that you wanted it off for the text drawer.

I'm not super worried about the default in the drawer because users do not use the drawer directly (probably the only users are the testsuite). So keep it as cregbundle=True, which is the current behavior.
Thanks!

@1ucian0 further question on default value. Since the default is set at the draw() level and then is passed down through circuit_drawer(), matplotlib_circuit_drawer(), and on to MatplotlibDrawer, it seems the default for draw() will have to be the default for mpl. By the time it gets to mpl, it's unknown whether it's default or user set. Right now draw() is setting cregbundle to False and mpl should be True. Any thoughts?

Also I didn't see a reno for this feature. I assume there should be one with features and deprecations sections. And to confirm, it's only applicable to text and mpl drawers?

Also just discovered that some of the tests for mpl require the default cregbundle to be True.

We can set the default to true in draw and circui_drawer.
On Mon, May 4, 2020, 7:41 PM Edwin Navarro<EMAIL_ADDRESS>wrote:

Also just discovered that some of the tests for mpl require the default
cregbundle to be True.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Qiskit/qiskit-terra/issues/4290#issuecomment-623764574,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAF3FZJ47JNI4XKBJNVOVIDRP5HB5ANCNFSM4MSC7KQA
.

By the time it gets to mpl, it's unknown whether it's default or user set. Right now draw() is setting cregbundle to False and mpl should be True. Any thoughts?

You can delay the default decision by setting the style to None, so you will now if the user was explicit or not.

Right. I thought about using None, but if we're ok with default True, that's how I'll leave it. Running last tests right now and will do PR shortly.


Advertise sqlpkg registry as part of individual package readme's

As part of the project description, e.g. sqlite-compressions, I would like to give a link to the sqlpkg registry.  This way you will grow ecosystem of packages, i.e. if a user discovers one, it will lead them to discover others.
To make this easier for developers, the sqlpkg should offer a few additional code and documentation things:

Some recommended Markdown template text with links to include in the readmes.
A way to link to a specific package in the registry
An easy to copy/paste badge (shield) to include at the top of the readme, maybe even adding it to one of the well know badge generation systems like this one

You can give the link as follows:
https://sqlpkg.org/?q={id}

For example: https://sqlpkg.org/?q=nyurik/compressions
You can use any badge you like, for example:
https://img.shields.io/badge/sqlpkg-gray
https://img.shields.io/badge/sqlpkg-nyurik/compressions-blue

Probably with a link:

I don't have any recommended text to include in the readme, and frankly, I don't think I want to provide it.

Sure.


Feature | Choose HTTP method when using saloon:request command

Hey 👋
Whenever I create a Request class, unless it's a GET request, I need to go into the class and change the method to the type I need it to be. I thought it might be nice to ask what method type it should be, before the class is created, kinda how we ask for the Integration and Name of it.
This PR adds a new option when creating a Request class, to be able to specify the type of method, the request is and because it makes use of Laravel Prompts, this slots in to the current flow rather nicely:

The MakeRequest class will then match the selected method to a stub file, or default to the already existing saloon.request.stub file.
This is targeting v3 as it makes use of the resolveStubName method that was added in https://github.com/saloonphp/laravel-plugin/pull/45
Happy to make any changes that are needed, to get this merged! 🌵

Hey @Sammyjo20 👋
Ash reminded me that Laravel Prompts were introduced in Laravel 10, so any Laravel 9 apps running this package won't be able to use this change, in fact, I tested it on a Laravel 9 application, and I get:
Call to undefined function Laravel\Prompts\select()

Happy to make the change to get it work with Laravel 9, however, would you be open to discussing the possibility of bumping the Laravel version so the minimum is 10? Especially with v3 being a major release? It'd be super cool to be able to use Prompts with this package!
🤠

Hey, Jon! Awesome PR 🤠 Thank you! This is such a good idea, as it's always something you have to change when a request class has been made.
With regards to Laravel Prompts - if we bumped to a minimum of L10 now, it would restrict anyone wanting to upgrade to v3's pagination plugin until they upgraded to Laravel 10. I'm thinking what might be more developer-friendly is merging this (and bumping the version) and releasing it as a minor 3.1 release shortly after. What do you think? Composer is really clever in this scenario and if it detects anyone on Laravel 9, the highest they'll be able to go is 3.0, so your 3.1 feature can then be for people using Laravel 10+.

The other thought I have is if there was a way to have a single stub file but insert the request type as a variable, similar to how we inject the class name? If that could be achieved then you would only need one stub file.

@Sammyjo20 Hey Sam!
I'm happy for this to be released as 3.1, it definitely makes sense with what you said, for sure! Last thing I want to do is cause a negative dev experience when using Saloon!
As for the single stub file, this was actually my original intention but couldn't figure out the best way to do it. I revisited it after a break and we now have just 1 stub file! 🥳  It now has {{ method }}, instead of GET, which we replace by overriding the buildClass() method in the MakeRequest class with whatever Method is selected by the user during the creation.
Thanks!

Thanks @Sammyjo20 🥳
This has actually given me some more ideas on things we can do when you're creating your classes, but I'll wait for 3.1 to be released first!

Hey @JonPurvis awesome PR - I think the only thing you need is to composer require laravel/prompts? Because it's not installed in Laravel by default and anyone who doesn't have it installed will get an error.
I'm also wondering that because Laravel prompts is still <1.0.0 will it cause issues with people trying to install it with conflicting versions? Or should we require it like "<1.0.0" instead of ^0.1.0?

Hey Sam!
I'm actually pretty sure that Laravel Prompts comes with Laravel 10. I've just checked the composer.json file of the laravel/framework package in my shiny new Laravel 10 application and it is in there:
"laravel/prompts": "^0.1.9"

When I run php artisan saloon:request on this branch in my application, I get Laravel Prompts, without having to install the package myself:

Actually, just checked the Laravel Prompts documentation and it does state:

Laravel Prompts is already included with the latest release of Laravel.

So I think we should be already covered?
Feel free to correct me if I'm wrong though, of course! 😆

Hey @Sammyjo20 👋
I've had a look at the status checks on this PR. Is there something I need to do to get the code style one to pass? The actual error doesn't seem to be an issue with the style, more to do with a GitHub action that I assume gets ran as part of the checks.
If it is something I can sort, please let me know!
🤠

Hey @Sammyjo20
Don't worry about it! You've been busy getting that XML Wrangled! 🤠
Thanks for that, I've ran that on this branch and pushed the update and it looks to have resolved it!

Awesome, all passing now! 🥳

Awesome! I've just had a look and I'm happy with the code but when I ran it locally to test it seemed to have some strange behaviour. I tried to work it out but I'm a little rusty with the ol generator commands :D
Basically, if I write:
php artisan saloon:request
It will work, and it'll correctly prompt for the method, however if I write
php artisan saloon:request Forge GetServersRequest
I'll actually get an error, and it won't prompt me for the method. Do we need to just provide a default method here? I've pushed a commit - let me know if this is the wrong kind of fix.

Hey,
That's absolutely my bad. I'm 99% sure I only actually ran saloon:request when doing the initial pass of this PR 😆
I've just pulled down your changes and can confirm they work, setting it to GET by default.
Thanks for sorting that, my apologies!

No problem at all, it's nice to be able to help! Thanks for this awesome feature! Get the tweets at the ready!


Good job!! Can you provide the preference model training code?

I am so interested in it and wanna get the preference just for testing.

+1,preference model weight for testing

Apologies for the delayed response. We've open-sourced the training code for the step-aware preference model at https://github.com/RockeyCoss/SPO/tree/main/step_aware_preference_model


feature: getCenterOfBounds()

In my project, I draw polygons to a map, and need to put markers on those, where the users can easily find them. The getCenter() function didn't give me nice results.
I'm not a native English speaker, so my comments may not the best.

Hey, thanks for your PR. Your method seems to do exactly what getCenter (https://github.com/manuelbieh/Geolib/blob/master/src/geolib.js#L416) is already doing. At least geolib.getCenter(polygon); gets the same result as your function.

No, they don't. I explained the difference in the comments.

Ah, you're right, sorry, I just had a short look at the code ;)


Bump OSA SHA to tip of stable/mitaka

Connects https://github.com/rcbops/u-suk-dev/issues/1061

recheck_ceph

recheck_ceph
Looks like ssh shenanigans during tempest testing:
19:20:27     tempest.lib.exceptions.SSHTimeout: Connection to the <IP_ADDRESS> via SSH timed out.
19:20:27     User: cirros, Password: rebuildPassw0rd

recheck_upgrade

recheck_upgrade

The upgrade jobs seems to be failing on waiting for elasticsearch. https://github.com/rcbops/u-suk-dev/issues/1065 will need to be looked at before this can move on. Marking this as blocked until it's resolved.

recheck_upgrade

recheck_upgrade


[api-docs] Small polish to the threads documentation. Document 'default_auto_arc…

A new commit was made into the api-docs repo. This issue was created automatically. Need to review if we made any change to the library for this commit.
https://github.com/discord/discord-api-docs/commit/82c98ba5699b69706cfb493a7c6e08b67ae1a8f3

Done


Add HDD User Telemetry HOL and images

Let me know if you have questions!

Hey @dtzar , anything else that I should fix for this lab?


Game flickering in Internet Explorer 10

I found an annoying bug on Windows 7 IE10, the game screen flickers with a white screen.
The bug is also on this demo from phaser examples page:
http://phaser.io/examples/v2/games/invaders
I tried to remove all the elements of the game (leaving only a black screen) and the game still flickers.
Phaser v2.4.2 | Pixi.js v2.2.8 | Canvas

Found the reason of the bug:
The bug only happens because I was testing in a virtual machine (using Virtual Box). I've tested in a real windows machine and found no bug at all.


[BUG] Harvester doesn't install on build from August 26 2021

Describe the bug
Harvester installer stuck on this screen during installation:

To Reproduce
Steps to reproduce the behavior:

Start the Installer, answer the first questions and wait for the issue

Expected behavior
Harvester installed.
Support bundle
Cannot be generated.
Environment:

Harvester ISO version: ISO build from August 26 2021 (I don't know the exact version, maybe the one generated from commit eea67886?)
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): tested on HP ProLient DL160 Gen9 and Qemu VM

Additional context
Related to the recent OS changes? I saw that the OS image is now generated with cOS.

@bk201 I've did more tests and I'm able to install the latest build on a 35GB disk, and the status is Ready.

Thanks for the testing. We have a recommended value in the doc. It would also be nice we can add some checks in the installer if the node doesn't meet the recommended spec. I created an issue to check this: https://github.com/harvester/harvester/issues/1154

close as this issue is resolved by using the correct disk size, an enhancement from the installer will be tracked on https://github.com/harvester/harvester/issues/1154.


Can tracking anything track all objects in a class in a long video?

Thank you for your excellent project about tracking. I have a question about tracking, can you explain it?
In this project, A object is tracked if it appears in the first frame, but sometimes, I want to track a new object that appears in another timeline (For example, i have a 1:30m video, and the first object appears in 5th second and the second object appears in 10th sec. I want to track both objects). Can this project handle this problem?

I'm also interested in knowing more about this^ I have been testing TAM and it seems like for tracking new objects that appear later than the "reference first frame", a new round of tracking is needed. Please correct me if I'm wrong!
If that's the case, perhaps a solution could be to perform a multi-round tracking? For example, (1) track the first 9 seconds of the video in the first round of tracking using the true first frame; (2) go to the 10th second of the video where the second object appears, using the 10th second frame as the "new first frame" to perform a second round of tracking; (3) use ffmpeg or other AV tools to concat the first 10 seconds of the first tracking result with the second tracking result.

I'm also interested in knowing more about this^ I have been testing TAM and it seems like for tracking new objects that appear later than the "reference first frame", a new round of tracking is needed. Please correct me if I'm wrong!
If that's the case, perhaps a solution could be to perform a multi-round tracking? For example, (1) track the first 9 seconds of the video in the first round of tracking using the true first frame; (2) go to the 10th second of the video where the second object appears, using the 10th second frame as the "new first frame" to perform a second round of tracking; (3) use ffmpeg or other AV tools to concat the first 10 seconds of the first tracking result with the second tracking result.

But can we know the objects that still tracking from first round of tracking to second round of tracking

I'm also interested in knowing more about this^ I have been testing TAM and it seems like for tracking new objects that appear later than the "reference first frame", a new round of tracking is needed. Please correct me if I'm wrong!
If that's the case, perhaps a solution could be to perform a multi-round tracking? For example, (1) track the first 9 seconds of the video in the first round of tracking using the true first frame; (2) go to the 10th second of the video where the second object appears, using the 10th second frame as the "new first frame" to perform a second round of tracking; (3) use ffmpeg or other AV tools to concat the first 10 seconds of the first tracking result with the second tracking result.

But can we know the objects that still tracking from first round of tracking to second round of tracking

From what I tested, it seems like if a mask is not drawn on the "second first frame", then the object won't be tracked. Ideally, the "second first frame" should be a frame that captures both objects of interests so that both objects can be tracked in the second round.
Unfortunately, I'm still exploring and don't have a good solution for case like this yet. I have also been testing whether concatenating an artificially created "first frame" (capturing all objects of interests) to the video would help with tracking, but I haven't gotten any good results.

Demo Example - Multiple Object Tracking and Segmentation (with [XMem](https://github.com/hkchengrex/XMem)), video_name:qingming.mp4 looks exactly what you said.

Demo Example - Multiple Object Tracking and Segmentation (with [XMem](https://github.com/hkchengrex/XMem)), video_name:qingming.mp4 looks exactly what you said.

Thanks for the recommendation! Will check this out


Ionic 3 plays only 16 HTML5 videos present in a list

Ionic version:  (check one with "x")
(For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[x] 3.x
[ ] 4.x
I'm submitting a ...  (check one with "x")
[x ] bug report
[ ] feature request
Current behavior:
I have a list of videos.
The First 16 videos play as expected. But starting from 17th, the video keeps loading but it never played.
I find this bug only on IOS device. On Android it works fine
Expected behavior:
All the videos in the list should play
Steps to reproduce:
An ion-list containing more than 20 videos makes this happen all time for me.
Related code:
<ion-list>      <ion-item *ngFor="let video of videos"> // Runs 50 times in a loop          <video autoplay muted webkit-playsinline playsinline loop preload="auto">               <source src="video.mp4" type="video/mp4"/>          </video>      </ion-item> </ion-list>
Other information:
#271 also is the same issue with Ionic 1. But i didnt find any answer in that
Ionic info::
cli packages: (/usr/local/lib/node_modules)

    @ionic/cli-utils  : 1.10.1
    ionic (Ionic CLI) : 3.10.1

global packages:

    Cordova CLI : 7.0.1

local packages:

    @ionic/app-scripts : 3.0.0
    Cordova Platforms  : android 6.2.3 ios 4.4.0
    Ionic Framework    : ionic-angular 3.7.1

System:

    ios-deploy : 1.9.2
    Node       : v8.5.0
    npm        : 5.4.2
    OS         : macOS Sierra
    Xcode      : Xcode 9.0 Build version 9A235

Hello! Thank you for opening an issue with us! Would you be able to provide a sample application via GitHub that demonstrates the issue you are having? Thanks for using Ionic!

You can find the application code here.

I dont think this is an issue with Ionic really.

This can be very expensive, since you're auto-playing all of the videos.

I've updated my code here. Im playing only one video which is in the viewport. But, still i'm stuck with the same issue. Can you suggest some other way to solve this issue. Thanks for the reply anyways.


Optimizations

Using https://devblogs.microsoft.com/typescript/introducing-deopt-explorer/, I'm working through some deoptimizations I'm seeing show up.

Note
Expectations here is that this results in fewer garbage collections being triggered in our running applications.

Record<string, X>
withStableIds, createTree, extractSlices were creating a very large object that was being deoptimized since we were sequentially adding keys to the object. By turning this to a map, it gets removed.

Constructor
Before
After

Object
126
112

✅ Optimization will improve lookup performance for tests and rendering, since Maps use hash maps under the hood and this optimization drops withStableIds from the top 15 deoptimized functions.
Custom Conversion class
For every call to convertTo, we were creating a new class, which combined two schemas together. We can cache the class and create it once when defining convertTo to prevent classes from being created over and over.

Constructor
Before
After

Document
1,307
7

✅ Optimization accepted since it has a huge impact and doesn't impact our API

@copilot-robot prerelease

@copilot-robot prerelease


Added Circular Linked List example code and 2 programs from HackerRan…

Added Circular Linked List example code and 2 programs from HackerRank Problem Solving Basic, PyramidPattern.java and UnexpectedDemand.java

@zeeshanayaz
Great 🚀


Responsive image optimization for mobile?

Perhaps add support for srcset? Hoping to get the images to load faster on mobile.
https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images
I'd be happy to help if you think it's worthwhile.

Hi, thanks for the request. I will have a look at it and get back to you. Think this should be doable with not to much effort.

Thanks @RRutsche. I added a PR for reference:
https://github.com/RRutsche/react-parallax/pull/42

I merged the pull request
https://github.com/RRutsche/react-parallax/pull/42 with some comments. Hope this is working for you now.


UserLegal / CompanyNumber

Hi,
As said in this part of the documentation (https://docs.mangopay.com/guide/user-verification), I need provide a CompanyNumber to create a valid LegalUser. But the sdk not allow to set this data (attribute not exist in the class)
Is it still necessary to provide it to get the regular state for my users ?
Thank you for your help !

Hello @guillaumecauchois, thanks for your question !
We will shortly update our SDK (in a few days) to provide a way to set this data for Legal User registration and update.
This value is not yet mandatory for KYC validation, but will become:

From April 30th if your account is not activated in production yet.
In october if you're already an activated client.


Transformed row context

✓ Checklist:

[ ] This PR has been added to CHANGELOG.md (at the top of the list);
[ ] Tests for the changes have been added (for bug fixes / features);
[ ] Docs have been added / updated (for bug fixes / features).

Codecov Report

Merging #41 (d330784) into main (b7de884) will increase coverage by 6.38%.
The diff coverage is 77.90%.

@@            Coverage Diff             @@
##             main      #41      +/-   ##
==========================================
+ Coverage   56.92%   63.31%   +6.38%
==========================================
  Files          37       38       +1
  Lines        1530     1709     +179
==========================================
+ Hits          871     1082     +211
+ Misses        659      627      -32

Impacted Files
Coverage Δ

datanymizer_dumper/src/lib.rs
2.70% <ø> (ø)

datanymizer_dumper/src/postgres/row.rs
0.00% <0.00%> (ø)

...atanymizer_dumper/src/postgres/schema_inspector.rs
0.00% <0.00%> (ø)

datanymizer_engine/src/errors.rs
0.00% <0.00%> (ø)

datanymizer_engine/src/lib.rs
100.00% <ø> (ø)

datanymizer_engine/src/transformer/mod.rs
42.85% <0.00%> (+11.42%)
:arrow_up:

datanymizer_engine/src/transformers/datetime.rs
47.05% <0.00%> (+47.05%)
:arrow_up:

datanymizer_engine/src/transformers/fk/mod.rs
91.33% <ø> (ø)

...anymizer_engine/src/transformers/internet/email.rs
44.44% <0.00%> (ø)

datanymizer_engine/src/transformers/internet/ip.rs
44.11% <0.00%> (ø)

... and 17 more

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 b7de884...b8ba10f. Read the comment docs.


Functional requirements

I want to know if it's possible to customize options instead of just switching options?
For example, I can choose controlnet or ipadapter or more other possibilities, and I can make work choices in the node section

I'll need to research on how to make Nodes that can take connection of Type.
Otherwise, it will basically need a different node for every single Type of connection...

Nowadays, the switching nodes of many plug-ins are limited to input switching. Output switching, this is a great idea. It would be so convenient if  switch any output like here.


Use map objects that follow vehicles

Reverted because of a bug that prevented MapObjects from following vehicles that were not simulated.


feat(formats): Add basic CRE import support

'Basic' implies name, gender, alignment, race, subrace, class, kit, multi and dual info, fallen status reading from provided .cre files and passing it to console output

Okay, we implement some basic reading from CRE and CHR formats.
It means that until we have chargen process of our own, we could create characters at BG1 and import them into our game,
Now we can set a goal to render this creatures!
For the past two weeks we encountered several interesting points:

We can unable to implement 'basic' name reading as CRE stores only string reference to dialog.tlk file, so for now we drop name reading
All hard work with BG1 formats was already done by Gibberlings 3 and accumulated in their IESDP knowledge base (http://gibberlings3.net/iesdp/). There was one misreading though - apparently in creature flags section 'fallen paladin' and 'fallen ranger' switch their places. I'm currently not sure where to report this as it seems that IESDP on gibberlings site out of date and several maintained copies exist hosted at github;
We need some format to store table data; I think 2DA may be? It's simple and well known to everyone who ever worked with IE or Aurora;
Creature's class/kit model is more complicated than I thought - we should come back and revise it later;


feat: restrict wales projects from ni + bo repository

Describe your changes
Ticket: https://pins-ds.atlassian.net/browse/ASB-2292
PR adds filters to NI and BO repository to remove all wales cases
Type of change 🧩

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update
[ ] Other (please explain in the description section above)

Checklist before requesting a review

[x] I have performed a self-review of my own code
[x] I have double checked this work does not include any hardcoded secrets or passwords
[x] I have made corresponding changes to the documentation
[x] I have provided details on how I have tested my code
[x] I have referenced the ticket number above
[x] I have provided a description of the ticket
[x] I have included unit tests to cover any testable code changes

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

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


Add option to use TrenchBroom groups to establish scene tree hierarchy

Suggested by Corruptinator on the discord- since TrenchBroom groups can be nested, they can be used to establish a node hierarchy during build time, which would enable easier control over local-space transforms like rotation.

And add to that easier for door rotations

Implemented during the C rewrite.


Feature: Intercept, validate, and potentially reject an update

My use case: I would like to impose a character limit on an editor, where any update that exceeds the limit is ignored.
In the abstract, I think the functionality this use case requires is the ability to intercept, validate, and potentially reject an update.
Per a discussion I had with @acywatson on Discord, we considered the following options:

Commands. However, it will be tricky to intercept the right commands.
Node Transform. I don't think this will work when pasting multiline content.
Update Listener -- call parseEditorState w/ prevState and then call setEditorState w/ the result. Expensive, and might have unintended side effects (i.e. undo/redo).

Is there is a good (or better) way to do this w/ the library as stands?
Thank you!

Just to add to this one - since this is also very relevant for the use-case I've been struggling with. My use case is not to potentially reject an update but to modify it: e.g when a new character gets inserted, I'd like to insert as a custom text node.
It would be ideal if an update happens that you have some access to what the (intended) update is as well the editorState.
Further thoughts that may be helpful: In DraftJS I solved this with the use of handleBeforeInput.
From what I can tell, the INSERT_TEXT_COMMAND works similarly but it just doesn't fire on every new character at the moment.

I think what you want here is to use a node transform on RootNode (we can expose this). Specifically you want to be able to track the content size of the editor, and you probably want to use some form of cache to improve the runtime complexity. When your root transform runs you can traverse the tree, getting the content from all text nodes and line breaks, and caching the sub-tree text content for a branch in your cache. If you encounter the text content accumulated as being bigger, you can split the current text node and remove all subsequent text nodes and branches thereafter.
Given that transform operate in cycles, you can avoid doing this work O(n^2) by checking if a branch (an element node) is dirty and if not, using the stored value from the cache. So if you have to traverse through a large tree from the start, you can skip entire sub-trees of work making the operation much more efficient. This is actually how the reconciler for Lexical works!

Clever! I can see myself using that pattern again and again.
Thank you for taking the time to respond... this isn't the first time you've taught me something (albeit the first time directly).


Benchmark Script

Added avg calculation

@Garfield96 It seems that this pull request includes some of the approved commits from previous PR #9. It should include only 83e7a24?

Approving the changes for 83e7a24 but the other commits should be removed as they are already merged with master.

@Garfield96 I added the plotting as discussed. The script could be further improved and we will need to introduce more benchmarks into it, but this should do for now.

@Garfield96 Please let me know when you are happy to give a green light for merging the pull request so I could do it.

I tested it and it worked fine


Failing test: Attachment name decoding

Added a failing test for attachment filename decoding issue.
As always its related to umlauts.

#410

Hi @nuernbergerA ,
many thanks for your pr! The failed test message is indeed strange:
There was 1 failure:

1) Tests\issues\Issue410Test::testIssueEmailB
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'2021_Mängelliste_0819306.xlsx'
+'2021_Mängelliste_0819306.xlsx'

/home/runner/work/php-imap/php-imap/tests/issues/Issue410Test.php:47

I currently can't make sense of it - I'll have to play around with it and think about it :)
Best regards & thanks again,

the output from github actions is normalized
its not an ä its a+ ̈
see https://unicode.org/charts/nameslist/n_0300.html

Hi @nuernbergerA ,
many thanks for the followup. It's the first time I came across the topic of COMBINING DIAERESIS - always something new. I believe I found the culprit, but lets see my next commit fixes it or not :)
Thanks again,


URNbis documents

The IETF URNBIS WG is finishing up a number of documents.
In particular, this one may be of interest to the TAG; it removes URNs from the semantic (but not syntactic) constraints of URIs (and thus URLs).
For example, a URI processor now wouldn't be able to assume that a URN that uses a hierarchical form could be a base for a relative URI, because the semantics there have changed.

Wut. That just means that they are a different thing altogether and cannot be put in the same box anymore. new URL() will continue to treat URLs starting with urn: just the same as before.

Picked up at TAG teleconf 11-may-2016

discussed at telecon https://github.com/w3ctag/meetings/blob/gh-pages/2016/telecons/06-01-agenda.md - agreed to put on hold and discuss at stockholm

Updated in Stockholm; it looks like the parts that might have had architectural impact have been walked back (specifically, removing semantics from path and query in URNs). Closing.


System 500 Error Occasionally for First Show Molecules when clicking through Jupyter cells

Problem:
Jupyter Notebooks run all or or fast click through , when show molecules is included as a cell, seems to have resources squeezed so flask process does not start and the resulting Iframe shows a system 500, if stepped through cell by cell problem does not occur.
Seems to be related to resources not allowing Flask to start, perhaps Jupyter multi-threading a node.
Suggested Fix, put 200 ms wait in Show molecules  to allow Flask to initialise thread.

released in 0.6.4