Return class instances

Currently a lot of the methods return an array. For example, the $block->get() method returns an array. This should populate the block class.
So it could be:
public function get(int $height)
{
    return $this->where('height', $height)->get();
}

Closing to archive this repository.


Need an option to always import files in /docker-entrypoint-initdb.d

our build process has no way to clean the mounted volume for the databases. sometimes we need to persist them, which is perfect already. other times we want to re-run the scripts to drop and re-create all databases. Currently there does not seem to be a way to work around this, is this feasible to work in and is there a way we can work around this for the time being?

Something similar to this:
I have created a new function to inject the files in the init.d folder and introduced a new variable for the environment named RESTORE_DATABASES, that if set to 1 will call the function. My syntax may not be 100% correct, but it's just an example that I think a lot of other users may find really helpfull.
entry_point.txt

i have attached a completed docker-entrypoint.sh.txt file which introduces a new environment variable to determine if the user would like to re-inject the sql files. Please let me know the best way to contribute these changes.
docker-entrypoint.sh.txt

The percona official image is no longer maintained in this repository -- please see https://hub.docker.com/_/percona/ for details about the new home of the percona official image source.


How to export the results to HTML?

Hi Michelle,
Thanks for developing such a great tool. I use it to analyze the students' feedback data collected by our program. It's so easy to set up and the functionality is exactly what I'm looking for :) It saves me so much time.
I am writing to ask what is the best way to share the Workbench view with other people without a programming background. I am hoping to share the generated results with faculty members, perhaps by exporting an HTML version, but there does not seem to be an option. I can export the dataframe and knit an html file in R notebook, but it will certainly not look as nice as your widget. Do you have any suggestions? Maybe I missed it in the API reference.
Also, the concept overview and concept/slice detail view in the widget have a lighter color than the concept matrix under VS Code's dark theme. Is there any plan to optimize the display?
Thanks again for a great tool!

Thanks, that's wonderful to hear that LLooM has been helpful for you! :)
That's a great suggestion to support exporting the visualization. You're right that that's not currently supported. I'll add that to our list of feature requests! For now though, if you run your notebook in Google Colab, you can share the final notebook, and other users can still interact with the full widget output. For an example of this, see the demo notebooks linked from the example pages, like the notebook linked from the Political Social Media example. Hopefully this can be helpful as a workaround for now!
Thanks for also raising about the dark mode color scheme! We designed the visualization in a light mode environment, but it would be nice to have a dark mode view. I hope you'll understand that this is a bit lower priority relative to other items, but I will add it to our list.


Lifecycle with updates at multiple hierarchy levels

This seems to be a particular lifecycle that wasn't considered when making the componentWillReceiveProps function deprecated. Or, perhaps I just cannot find a built-in way in React on how to do this properly. In either case, some guidance would be highly appreciated.
In my project, a top-level component fetches data from a service and then passes it, when received, to lower-level components as props (i.e., the higher-level component is fully controlled). These lower-level components are fields that display the retrieved data, and allow adding and removing data items afterwards. Clearly, these operations need to be reflected in the state (and also sent to the restful service, but this is inconsequential here). Hence, it would make sense to make the state the "single source of truth" since the data could be updated by the lower-level component ("field" from now on) at any point, requiring a re-render each time (?)
When first creating the field (i.e., in the constructor), this data is not yet available, since it's fetched from the service. This means that a method such as componentWillReceiveProps or getDerivedStateFromProps should be used to derive the initial state from the props (?) Since componentWillReceiveProps is deprecated I recently tried replacing it with getDerivedStateFromProps. However, this function is called "on every render, regardless of the cause" (e.g., because of a state change), instead of componentWillReceiveProps "which only fires when the parent causes a re-render" (see here). Hence, any local state change (e.g., removing a data item) will also cause the getDerivedStateFromProps function to be called (including ones caused by getDerivedStateFromProps ...).
Currently, to differentiate between state & props updates, I introduced the following function, which only derives the state from the props once, and, after any local state change, will ignore changes in props.  The function is called from the field's getDerivedStateFromProps function (ignoreFunction depends on the particular field, and returns whether state and props include the same data). Note that a local state change involves setting an update field to true in the state.
static getGroundStateFromProps(props, state, ignoreFn) {
    // nothing in state or props was updated
    if (ignoreFn(state, props))
      return null

`    // some relevant update occurred; either state or props
    else {
      // in case state has been updated once, consider it "ground truth"
      if (state.updated)
        return null
      else
        return { values: props.values }
    }
  }

Would this be a suitable pattern to deal with this issue?

Have you read this post? I think most of it addresses this exact issue (and explains why this approach is fragile even with componentWillReceiveProps and usually leads to bugs).
https://reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html

Yes, I did. The post does not address this particular scenario, focusing instead on some trivial example (not to criticize - I understand why simple examples are needed). If it does, please explain how it applies to this scenario.

Hmm. Your current solution with componentWillReceiveProps sounds like this simplified scenario, and the proposed alternative solution is to use fully uncontrolled component with a key. Would that not work for you? Here's a refactor where I did this: https://github.com/facebook/react/issues/12898#issuecomment-413617738. Maybe if you come up with a similar simplified example I can help.

Thanks for your comment. Essentially I simply try to catch the first time a non-empty prop is passed (i.e., something was retrieved from the service).
I suppose that a higher-level component could pass an artificial "null" key (some dummy value) when no data was received, and then finally props.object.id, but this would require the higher-level component to be uncontrolled (?) A second solution would be a variant of "alternative 1", which I already have..
To be honest, I don't understand how "fully uncontrolled component with a key" could be considered anything but an anti-pattern - as noted on the page it requires completely re-building the component. I also find it quite unintuitive but perhaps others see it differently. (This is a general reflection, not targeted towards you personally)

It'll be hard to continue without a runnable code example e.g. a CodeSandbox demo. Even simplified. There are many subtle details depending on what behavior you want exactly, and discussing them in abstract often misses the point. Again, I'd be more than happy to look into this, but I need something tangible to work on.

Please have a look here: https://codesandbox.io/s/2x7m252vrj
As mentioned I can see how a higher-level component could pass an artificial "null" key (some dummy value) when no data was received, and then finally an actual object ID when the object is available - but I don't see how that solution would be better than my current one (even worse, since it creates an entirely new component).

I would appreciate your feedback, seeing how this kind of solution is actively being discouraged in the documents and on issue pages - but is nevertheless working for me, and, in my opinion, a better solution than the pattern being proposed.


Added API for University of Oslo

The API documentation is unfortunately only in Norwegian at the moment. But the API in itself is in english, e.g. https://data.uio.no/studies/v1/course/{course-code}/semester/{semester-code}/schedule/resources/lecture-videos

[x] Your submissions are formatted according to the guidelines in the contributing guide
[x] Your additions are ordered alphabetically
[x] Your submission has a useful description
[x] The description does not end with punctuation
[x] Each table column should be padded with one space on either side
[x] You have searched the repository for any relevant issues or pull requests
[x] All changes have been squashed into a single commit

Sorry, I didn't notice the breaking tests, should be fixed now.

Thanks!


Issue with tmux when first run after install

Hi,
First of all great job with your dotfiles i was looking for one since a long time and yours dotfiles are amazing.
My issue is a problem with tmux and i don't know how to fix it just because i'm new with tmux and still learning it.
I run your script on ubuntu with WSL

If anyone can help me it will be nice.

Looks like an issue with your tmux conf, not with this repository. I'm guessing you're using https://github.com/jldeen/bad-ass-terminal


set default ipc_mode to "shareable"

Description
See the issue linked below.  Set the default ipc_mode to "shareable" - tested clean (non-cookbook) installs of docker version 19.03.5-3 on both ubuntu and fedora and default ipc_mode was "shareable."
https://github.com/docker/go-docker/blob/4daae26030ad00e348edddff9767924ae57a3b82/api/swagger.yaml#L696-L697
                    If not specified, daemon default is used, which can either be `"private"`
                    or `"shareable"`, depending on daemon version and configuration.

Default memory_swap of 0 should be fine per https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details
Also updated resource params per the chef true/false style introduced in chef 15.6.0:
https://github.com/chef/cookstyle/blob/master/config/cookstyle.yml#L110-L116
https://github.com/chef/cookstyle/pull/462
Issues Resolved
https://github.com/chef-cookbooks/docker/issues/1083
Check List

[X ] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[X ] New functionality includes testing.
[X ] New functionality has been documented in the README if applicable
[X ] All commits have been signed for the Developer Certificate of Origin. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

@smcavallo We just made this same change minus the cookstyle stuff in #1103


The msgraph-core 1.1.8 import of LargeFileUpload tasks raises  'ABCMeta' object is not subscriptable error

Describe the bug
When you install msgraph-core 1.1.8 and attempt to import LargeFileUploadTask it fails with 'ABCMeta' object is not subscriptable error. This was working fine in 1.1.7.
The stacktrace:
  File "/opt/airflow/airflow/models/dagbag.py", line 384, in parse
    loader.exec_module(new_module)
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/opt/airflow/providers/tests/system/microsoft/azure/example_powerbi_dataset_refresh.py", line 26, in <module>
    from airflow.providers.microsoft.azure.operators.powerbi import PowerBIDatasetRefreshOperator
  File "/opt/airflow/providers/src/airflow/providers/microsoft/azure/operators/powerbi.py", line 25, in <module>
    from airflow.providers.microsoft.azure.hooks.powerbi import (
  File "/opt/airflow/providers/src/airflow/providers/microsoft/azure/hooks/powerbi.py", line 24, in <module>
    from airflow.providers.microsoft.azure.hooks.msgraph import KiotaRequestAdapterHook
  File "/opt/airflow/providers/src/airflow/providers/microsoft/azure/hooks/msgraph.py", line 43, in <module>
    from msgraph_core import APIVersion, GraphClientFactory
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/__init__.py", line 16, in <module>
    from .tasks import PageIterator
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/__init__.py", line 2, in <module>
    from .large_file_upload import LargeFileUploadTask
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/large_file_upload.py", line 21, in <module>
    class LargeFileUploadTask:
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/large_file_upload.py", line 28, in LargeFileUploadTask
    parsable_factory: Optional[ParsableFactory[T]] = None,
TypeError: 'ABCMeta' object is not subscriptable

Example failures in airflow CI: https://github.com/apache/airflow/actions/runs/12394058058/job/34597170319#step:7:2472
Expected behavior
No exception raised when importing the class.
How to reproduce

Install msgraph-core 1.1.8
Run this:

from msgraph_core import APIVersion, GraphClientFactory

Result:
root@5ae8d440acf3:/opt/airflow# pip install msgraph-core==1.1.8
Collecting msgraph-core==1.1.8
  Downloading msgraph_core-1.1.8-py3-none-any.whl.metadata (7.4 kB)
Requirement already satisfied: microsoft-kiota-abstractions<2.0.0,>=1.0.0 in /usr/local/lib/python3.9/site-packages (from msgraph-core==1.1.8) (1.3.3)
Requirement already satisfied: microsoft-kiota-authentication-azure<2.0.0,>=1.0.0 in /usr/local/lib/python3.9/site-packages (from msgraph-core==1.1.8) (1.1.0)
Requirement already satisfied: microsoft-kiota-http<2.0.0,>=1.0.0 in /usr/local/lib/python3.9/site-packages (from msgraph-core==1.1.8) (1.3.3)
Requirement already satisfied: httpx>=0.23.0 in /usr/local/lib/python3.9/site-packages (from httpx[http2]>=0.23.0->msgraph-core==1.1.8) (0.27.0)
Requirement already satisfied: anyio in /usr/local/lib/python3.9/site-packages (from httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (4.7.0)
Requirement already satisfied: certifi in /usr/local/lib/python3.9/site-packages (from httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (2024.12.14)
Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.9/site-packages (from httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (1.0.7)
Requirement already satisfied: idna in /usr/local/lib/python3.9/site-packages (from httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (3.10)
Requirement already satisfied: sniffio in /usr/local/lib/python3.9/site-packages (from httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (1.3.1)
Requirement already satisfied: h11<0.15,>=0.13 in /usr/local/lib/python3.9/site-packages (from httpcore==1.*->httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (0.14.0)
Requirement already satisfied: h2<5,>=3 in /usr/local/lib/python3.9/site-packages (from httpx[http2]>=0.23.0->msgraph-core==1.1.8) (4.1.0)
Requirement already satisfied: std-uritemplate>=0.0.38 in /usr/local/lib/python3.9/site-packages (from microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (2.0.1)
Requirement already satisfied: opentelemetry-api>=1.19.0 in /usr/local/lib/python3.9/site-packages (from microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.27.0)
Requirement already satisfied: opentelemetry-sdk>=1.19.0 in /usr/local/lib/python3.9/site-packages (from microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.27.0)
Requirement already satisfied: aiohttp>=3.8.0 in /usr/local/lib/python3.9/site-packages (from microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (3.11.10)
Requirement already satisfied: azure-core>=1.21.1 in /usr/local/lib/python3.9/site-packages (from microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.32.0)
Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (2.4.4)
Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.3.2)
Requirement already satisfied: async-timeout<6.0,>=4.0 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (5.0.1)
Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (24.3.0)
Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.5.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (6.1.0)
Requirement already satisfied: propcache>=0.2.0 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (0.2.1)
Requirement already satisfied: yarl<2.0,>=1.17.0 in /usr/local/lib/python3.9/site-packages (from aiohttp>=3.8.0->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.18.3)
Requirement already satisfied: requests>=2.21.0 in /usr/local/lib/python3.9/site-packages (from azure-core>=1.21.1->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (2.32.3)
Requirement already satisfied: six>=1.11.0 in /usr/local/lib/python3.9/site-packages (from azure-core>=1.21.1->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.17.0)
Requirement already satisfied: typing-extensions>=4.6.0 in /usr/local/lib/python3.9/site-packages (from azure-core>=1.21.1->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (4.12.2)
Requirement already satisfied: hyperframe<7,>=6.0 in /usr/local/lib/python3.9/site-packages (from h2<5,>=3->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (6.0.1)
Requirement already satisfied: hpack<5,>=4.0 in /usr/local/lib/python3.9/site-packages (from h2<5,>=3->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (4.0.0)
Requirement already satisfied: deprecated>=1.2.6 in /usr/local/lib/python3.9/site-packages (from opentelemetry-api>=1.19.0->microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.2.15)
Requirement already satisfied: importlib-metadata<=8.4.0,>=6.0 in /usr/local/lib/python3.9/site-packages (from opentelemetry-api>=1.19.0->microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (6.11.0)
Requirement already satisfied: opentelemetry-semantic-conventions==0.48b0 in /usr/local/lib/python3.9/site-packages (from opentelemetry-sdk>=1.19.0->microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (0.48b0)
Requirement already satisfied: exceptiongroup>=1.0.2 in /usr/local/lib/python3.9/site-packages (from anyio->httpx>=0.23.0->httpx[http2]>=0.23.0->msgraph-core==1.1.8) (1.2.2)
Requirement already satisfied: wrapt<2,>=1.10 in /usr/local/lib/python3.9/site-packages (from deprecated>=1.2.6->opentelemetry-api>=1.19.0->microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.17.0)
Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.9/site-packages (from importlib-metadata<=8.4.0,>=6.0->opentelemetry-api>=1.19.0->microsoft-kiota-abstractions<2.0.0,>=1.0.0->msgraph-core==1.1.8) (3.21.0)
Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.9/site-packages (from requests>=2.21.0->azure-core>=1.21.1->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (3.4.0)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.9/site-packages (from requests>=2.21.0->azure-core>=1.21.1->microsoft-kiota-authentication-azure<2.0.0,>=1.0.0->msgraph-core==1.1.8) (1.26.20)
Downloading msgraph_core-1.1.8-py3-none-any.whl (35 kB)
Installing collected packages: msgraph-core
  Attempting uninstall: msgraph-core
    Found existing installation: msgraph-core 1.1.7
    Uninstalling msgraph-core-1.1.7:
      Successfully uninstalled msgraph-core-1.1.7
Successfully installed msgraph-core-1.1.8
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.
root@5ae8d440acf3:/opt/airflow# python
Python 3.9.21 (main, Dec  4 2024, 20:35:10)
[GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from msgraph_core import APIVersion, GraphClientFactory

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/__init__.py", line 16, in <module>
    from .tasks import PageIterator
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/__init__.py", line 2, in <module>
    from .large_file_upload import LargeFileUploadTask
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/large_file_upload.py", line 21, in <module>
    class LargeFileUploadTask:
  File "/usr/local/lib/python3.9/site-packages/msgraph_core/tasks/large_file_upload.py", line 28, in LargeFileUploadTask
    parsable_factory: Optional[ParsableFactory[T]] = None,
TypeError: 'ABCMeta' object is not subscriptable
>>>
>>>

SDK Version
1.1.8
Latest version known to work for scenario above?
1.1.7
Known Workarounds
Downgrade msgraph-core to 1.1.7
Debug output
No need for more debugging.
Configuration
Linux Debian Bookworm, Python 3.9.21
Other information
No response

Any news here ? You are pretty-much breaking everyone who is using your library and using this feature


script works fine right until the combat starts. what to do?

I installed python 3.7 and visual basic and did alll the things and got the latest script and all that.
It even starts the game for me and goes into the fight.
And then it doesn't try to do the combat and stay clicking on the bottom right doing nothing.
I don't know why exactly tho so any help would be appreciated.
thanks for the program btw it has been great saving my time and sanity.
(It has been working on my laptop, but not on my desktop, same 1920x1080 resolution monitor and 1600x900 simplified chinese versions)

I think script doesn’t work after new patch. We need to modify script

I think script doesn’t work after new patch. We need to modify script

Maybe not well with the new characters, but I am having no problems with my usual automatic party on my laptop right now(Ragnaros Geddon Antonidas + Garrosh Saurfang  Edwin). Same comp/same stage does not work on my desktop for some reason. It's sad because I want to let desktop earn my coins while I am out with my notebook.

After previous update blizzard changed some icons (for example treasure, some buttons) so script may stucks. May be the same issue with new update.

I think script doesn’t work after new patch. We need to modify script

Dependency packages need to be updated after new patch. Run pip install like the FAQ shown, this might help.

I installed python 3.7 and visual basic and did alll the things and got the latest script and all that. It even starts the game for me and goes into the fight. And then it doesn't try to do the combat and stay clicking on the bottom right doing nothing. I don't know why exactly tho so any help would be appreciated. thanks for the program btw it has been great saving my time and sanity. (It has been working on my laptop, but not on my desktop, same 1920x1080 resolution monitor and 1600x900 simplified chinese versions)

Maybe check the hearthstone path or you can check the log files to find information about the bug


Is there a way to use event tracking without the HoC

Hi there!
The docs suggest to track metrics for an experiment that you need to use the withOptimizely HoC. Is there a hook available to do this, instead?
Thanks!

wondering about exactly the same

@grug after looking through the source a bit more we came up with the following to build our own tracking hook:
import {  OptimizelyContext } from '@optimizely/react-sdk';
export function useOptimizelyTrack() {
  const { optimizely } = useContext(OptimizelyContext);
  return (val) => optimizely.track(val);
}

I hope this gives you something to get started with.

@tbgse very cool :)
I wonder if we could open a PR into this repo to add this. Trying to think of any repercussions of having this hook written like this.

It's probably a good idea to create a PR but i don't have the time at the moment to fully write out the hook (it'd also need  to support overrides, passed tags return (val, overrides, tags) => optimizely.track(val, overrides, tags); be typed correctly and require some tests to be added to the hooks.spec.tsx.
Hoping that someone from optimizely might find this issue and take the initiative

Hi @tbgse , I'm trying out the hook example you posted above, and I can see in the network tab that an event is being sent, but there's no evidence of the event-key in the call. Because of that the experiment metrics aren't changing.
Basically like this:
const trackEvent = useOptimizelyTrack()

function handleEvent() {
    trackEvent('start-button-click')
}

 return (

)

This is a component inside of App which is wrapped in the OptimizelyProvider
Am I missing something?

To follow up with the previous post, I've updated the hook to include the userId, but Optimizely still isn't receiving the event clicks.
export function useOptimizelyTrack() {
    const { optimizely } = useContext(OptimizelyContext)
    return (val) => optimizely.track(val, optimizely.user.id)
}```

Hey @erni-cap i just had a quick look at our codebase and we actually pass a third argument (data) which defaults to an empty object e.g. optimizely.track(val, optimizely.user.id, {})
I'm not sure if that might already fix your problem, otherwise i can try to have another look.

I gave that whirl, but it's still not showing up in the experiment. Is there some lag for click events to show up?

I learned that the userId wasn't ready in time for the track hook to have access to the userId. @tbgse , your original hook solution worked with just sending val


Bump importlib metadata version

Fixes #152

@samj1912 just checking you saw this failure and are able to address? thanks

@samj1912 @adamcunnington-mlg
Looking at
https://github.com/python-poetry/poetry-core/blob/d487e8b1c12bc6a91b5aee04d5ae445204e06635/pyproject.toml#L39
https://github.com/python-poetry/poetry/blob/dca0c562c42cb79a494eff982fc8a52c632100f4/pyproject.toml#L34
Looks like should be using importlib-metadata and adding the
importlib-metadata = {version = ">=1.7.0", python = "<3.8"}
Poetry Requirements and Cruft Poetry Requirements look quite different.

@samj1912 sure, I'd agree with that - can you make the fix?
Thanks

Fixed in #154


Feat: bump GitHub Insights Plugin version

GitHub Insights Plugin
Hello,
this PR bump plugin version to the latest one. Plugin is of course backward compatible.
Changes:

replace ReactMarkdown component to the one from Backstage core adopting those changes https://github.com/backstage/backstage/pull/3157
resolve issues with fetching contributors avatars for GitHub Enterprise setup

:heavy_check_mark: Checklist

[ ] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)

The build failures for this PR will be fixed by: https://github.com/backstage/backstage/pull/3328

OK, the other one is merged.

:( conflcts in yarn.lock 🐈

@benjdlambert conflicts resolved, hopefully test will pass now 👍


no demo link

Hi, I wasn't sure where to post this. Any chance you can supply us with a demo link?

Hmmm. I've been working on this for my own needs and not updating the README or paying much attention to the open-source nature of it.
I currently have an instance of Quiver-CMS running Calligraphy.org. You're welcome to create an account there and poke around. You won't be able to see any of the moderator or admin portions of the site, but you'll get a good idea of what it looks like from a user's perspective.
I'm deploying with Docker, so my Dockerfile works. You may need to fuss around a bit with the config to get NGINX working, but once you've done that, I have launch scripts in /bin that will take you across the finish line.

Thank you! I love open source people.
I wish I had something to give back to the community like you do..


The checksum value of the tmp file and the gomockhandler.json got different When running the check command.

Version

<EMAIL_ADDRESS><EMAIL_ADDRESS>
Actual behavior
Despite the mock being up to date, the gomockhandler -config=./gomockhandler.json check command reports a different checksum value, leading to the determination that it is not the latest version.
[ERROR] mock is not up to date. destination: usecases/mock/xxx.go
Expected behavior
gomockhandler -config=./gomockhandler.json check command works correctly.
Why this issue occurred
https://github.com/uber-go/mock/commit/2c718f249a424ac6ce6e2afa28c3c17f95c51241 was merged and is affecting gomockhandler, causing the check command to not work correctly.
Detail
The checksum values differ because the file paths for the destination specified in the comments within code A and code B are different.
code A : generated code by go.uber.org/mock/mockgen
// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/org/repo/api/usecases (interfaces: xxx)
//
// Generated by this command:
//
//      mockgen -destination=usecases/mock/xxx.go -package=usecases_mock github.com/org/repo/api/usecases xxx
//

code B : tmp file code to calculate checksum in this line
// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/org/repo/api/usecases (interfaces: xxx)
//
// Generated by this command:
//
//      mockgen -destination=usecases/mock/tmp_xxx.go -package=usecases_mock github.com/org/repo/api/usecases xxx
//

@s4s7 Thanks for the investigation with such details. Fortunately, the change on gomock hasn't been released yet.
Based on the commit you shew, seemingly we should use --write_command_comment=false on mockgen internally (ref1, ref2).
Are you willing to help contribute again? :)
Also, the difficulty here is the version difference. If users' installed mockgen is the older version, mockgen wouldn't accept write_command_comment flag and error out.
Once the change on gomock side is released, we also have to cut the release, calling out this breaking change with it - the required action from users would be updating mockgen version on their local machine/CI.

I want to contribute again, thank you!

Sorry, I may have mislead you a bit.
It seems that the gomockhandler -config=./gomockhandler.json check is already not working correctly in<EMAIL_ADDRESS>I think we need to include a process that replaces // mockgen -destination=usecases/mock/tmp_xxx.go with // mockgen -destination=usecases/mock/xxx.go within the commented-out section  to  perfectly matche tmpFile(/mock/tmp_xxx.go) with the file(/mock/xxx.go) generated by mockgen.

Do we miss something else? since https://github.com/uber-go/mock/commit/2c718f249a424ac6ce6e2afa28c3c17f95c51241 is not included in mockgenv0.4.0.

Ah, now I got it: the command generated in mock files in past release, https://github.com/uber-go/mock/issues/104 proposed the way to disable it, and it comes to write_command_comment option now.

Yeah, so we have to think the way of avoiding this issue without write_command_comment.

I think we need to include a process that replaces

Yup, looks good. Let's give it a try.

Published https://github.com/sanposhiho/gomockhandler/tree/v1.5.0, try out it!


When the target element width is zero, elementHandle.screenshot does not work.

Tell us about your environment:

Puppeteer version: v1.4.0
Platform / OS version: linux
Node.js version: v8.11.0

What steps will reproduce the problem?
Please include code that reproduces the issue.
const puppeteer = require('puppeteer');

const browser = await puppeteer.launch({
  args: ['--no-sandbox', '--disable-setuid-sandbox']
});
const page = await browser.newPage();
const SCREENSHOT_FILE = 'screenshot.png';

await page.goto('xxx.com');
await page.waitForSelector('div');
const areaContainer = await page.$('div');

await areaContainer.screenshot({
  path: SCREENSHOT_FILE
});
console.log('screenshot end');   // cannot execute to this line
await browser.close();

What is the expected result?
console.log('screenshot end') cannot execute when div has no width and height.
What happens instead?
I hope it shouldn't be blocked, Or throw a error?

@aslushnikov The minimal example you had posted hangs for me using v1.7.0. Does it (still) work for you?

@aslushnikov for more background, I see this on Linux (Ubuntu 18.04), node v10.9.0, puppeteer v1.7.0, chromium r579032.

@pkra: works nicely for me. I think we even have a test that makes sure this scenario is functioning.

@aslushnikov thanks for the response. This still consistently hangs for me on Linux (Ubuntu 18.04), node v10.9.0, chromium r588429.
Would you have ay advice on how to dig deeper into this?

@pkra hmm I didn't find a test for this; I've added one - let's see how it performs on our trybots.

Ah, linux is busted indeed.

Thanks so much for looking into it, @aslushnikov!


Along with disableAutoFetch option as true, is it possible to increase the number of pages loaded in the DOM?

I use pdfjs-dist as an npm package version 1.7.331 in an ember app.
I wanted to send byte range requests on demand. So I made disableAutofetch and disableStream to true. Now on load, only first two pages are in the DOM. But while scrolling the pdf, there seems to some delay in rendering the pages and the scrolling is not smooth.
So is there anyway to increase the default no. of pages pre-loaded in DOM with disableAutofetch and disableStream as true so that delay in rendering will become lower and scrolling will be smooth?

I use pdfjs-dist as an npm package version 1.7.331 in an ember app.

That version first of all doesn't correspond to any official release, and second of all it's also quite out-of-date.

But while scrolling the pdf, there seems to some delay in rendering the pages

That's hardly surprising, given that the point of disableAutoFetch = true is to attempt to delay loading of as much of the PDF file as possible until the data in question is actually needed. Hence rendering becomes network bound, rather than just affected by the speed of the computer.

So is there anyway to increase the default no. of pages pre-loaded in DOM with disableAutofetch and disableStream as true so that delay in rendering will become lower and scrolling will be smooth?

You could try modifying https://github.com/mozilla/pdf.js/blob/3b07147d98e376a774316288647d421b80b589c1/web/pdf_rendering_queue.js#L96 to pre-render more than just one page (as it's currently doing).
However, please keep in mind that doing so will increase both CPU and memory usage. Furthermore by requesting more data than strictly necessary upfront, such a change could also end up making disableAutoFetch = true more or less redundant. (Keep in mind that, with the exception on "linearized" files, it's generally not possible to load only the data for a specific page.)


the class layerWholeL2Normalize not have the attribute 'weights'

RT

Details please.

How to reproduce? What network, what version of MatConvNet?
Full error text / back trace

Sorry for I did not give the details.

setting:
NetVLAD: Version 1.03 (04 Mar 2016)
relja_matlab: Version 1.02 (29 Feb 2016)
MatConvNet: 1.0-beta20

Error:
There are some errors when I use the function "relja_simplenn_tidy".
Ther information:

    '''''''''''''''''''''''''''''''''''

    No public field weights exists for class layerWholeL2Normalize.

Error in vl_simplenn_tidy (line 51)
	layer.weights = {};

Error in relja_simplenn_tidy (line 25)
	net = vl_simplenn_tidy(net);

Error in test (line 21)
	net = relja_simplenn_tidy(net);

'''''''''''''''''''''''''''''''''''''''''''

3.Test Code:

% Set the MATLAB paths
setup;

% ---------- Use/test our networks

% Load our network
netID= 'vd16_tokyoTM_conv5_3_vlad_preL2_intra_white';
paths= localPaths();
load( sprintf('%s%s.mat', paths.ourCNNs, netID), 'net' );

a = sprintf('%s%s.mat', paths.ourCNNs, netID);
disp (a);
net= relja_simplenn_tidy(net);      //error

4.And I am new with MATLAB.. Thank you very much!!

The problem is due to the latest version of MatConvNet (1.0-beta20) which introduced an error, thanks for pointing this out.
I have raised this issue with the MatConvNet team ( https://github.com/vlfeat/matconvnet/issues/552 ) and am waiting to see what they do / how they fix it.
In the mean time, you have two options:

Use a slightly older version of MatConvNet (1.0-beta18 or 1.0-beta19)

Apply the following changes which seem to fix the problem:

a) in MatConvNet matlab/simplenn/vl_simplenn_tidy.m change line 50 if ~isfield(layer, 'weights') to if ~isfield(layer, 'weights') && ~isprop(layer, 'weights'), and line 106 if ~isfield(layer, defaults{i}) to if ~isfield(layer, defaults{i}) && ~isprop(layer, defaults{i})
b) In NetVLAD code, add weights= {} to files layerWholeL2Normalize.m, layerTotalAvg.m, layerTotalMax.m just after the line precious= false
c) in NetVLAD code, file netPrepareForTrain, change line 6 if i>=backPropToLayer && isFieldOrProp(net.layers{i}, 'weights') to if i>=backPropToLayer && isFieldOrProp(net.layers{i}, 'weights') && ~isempty(net.layers{i}.weights)

thank you very much！

The MatConvNet team has fixed the issue I referenced above (in patch https://github.com/vlfeat/matconvnet/commit/91399d47fcfcd06836f30ee3d88fcc7116ae40e0 ), so the NetVLAD code works without any modifications now.


Pass '=' as a custom formula's argument

I have the esigenze to pass the equal sign into a formula's argument.
If I write it into a string the formula works: =FORMULA('example=').
But, if I write example= into a cell (for example A1) and then I call the formula =FORMULA(A1), it doesen't work, because I suppose that the argument is not passed as a string.
I'm wandering if there is a method to pass the equal sign with both methods...

I am not sure if this is the problem. Can you share you example on jsfiddle?

While I was creating the script I noticed that with samples strings it works, but if try to use more complex strings as argument like C1(=CC=CC=C1) it doesen't work https://jsfiddle.net/6y4cnto2/

In this case you should use some method to concat your string.
Regards,
Paul Hodel
On Mon, Apr 27, 2020 at 11:43 PM Giulio De Matteis<EMAIL_ADDRESS>wrote:

While I was creating the script I noticed that with samples strings it
works, but if try to use more complex strings as argument like
C1(=CC=CC=C1) it doesen't work https://jsfiddle.net/6y4cnto2/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/paulhodel/jexcel/issues/938#issuecomment-620273985,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABN5VAJPXY5MXGFEERXKSGTROYDC3ANCNFSM4MR3K3ZA
.

I tried to return C1(=CC=CC=C1) without numbers (C(=CC=CC=C) ). In this case =FORMULA(A1) seems to work.
So, I tried to follow your advice, but, when I split the strings*: =FORMULA(A1) returns the error message #ERROR, while =FORMULA('C1(=CC=CC=C1)') returns correctly C.
So, it seems that the problem are the numbers and not the equal signs.
*var FORMULA = function(v) { return v.split('1')[0]; }

I resolved the problem by setting autoCasting: false.


Efficiently rendering time-varying trimeshes

A frequent use case for trimesh rendering is to plot a time-varying mesh where the mesh coordinates are static but the node or triangle values vary over time. Using the current approach the canvas.trimesh has to recompute the intermediate datastructure each time which is very inefficient when you are trying to plot hundreds or even thousands of different timesteps of the same mesh. We either need to rethink the intermediate datastructure or we should find a way to efficiently update the mesh datastructure with the time-varying values.

Is there a premise here that we can't put all of the feature columns (one per timestep) in the initial tris dataframe that is then converted into the mesh dataframe?

Is there a premise here that we can't put all of the feature columns (one per timestep) in the initial tris dataframe that is then converted into the mesh dataframe?

That could be a solution but isn't necessarily possible, since since there can be hundreds or even thousands of time steps.

Also, the incoming data can come in batches -- the initial mesh is defined, visualized and adjusted, then given to a simulator that generates arbitrarily many Z values over time for each mesh location.  E.g. it could produce a new file every 1000 time steps, which we could stream in continuously using the same mesh object.


Export/import configuration

I think it would be a nice thing to have: the option to import and export the configuration (projects, commands, servers...) so in case its needed to restart the server it can be restored easily.
Right now I'm doing it with a mysqldump and discarding some table to just export the configuration:
mysqldump -u root deployer --ignore-table=deployer.migrations --ignore-table=deployer.jobs --ignore-table=deployer.deployments --ignore-table=deployer.deploy_steps --ignore-table=deployer.failed_jobs --ignore-table=deployer.server_logs --ignore-table=deployer.password_resets > dump.sql

I actually use https://github.com/backup-manager/laravel to backup the DB whenever an update is run, so it should be possible to use this to do what you want, try running php artisan db:backup ;) Not sure if there is a way to ignore tables off hand though


Table aliasing not working with unique validator

What steps will reproduce the problem?
I have a base model where I have set up an unique validator.
I then have a couple of models that extend from that - and those use table aliases - because I often need to query these together.
Now when I create a new model and try to validate the input I get a SQL error because unique validator generates where clause with table name and not with table alias.
What is the expected result?
Unique validator should use table alias
What do you get instead?
I get a SQL error because unique validator generates where clause with table name and not with table alias.
Additional info
This is the SQL error. You should get the picture on what I'm doing from that

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'translation.language_id' in 'where clause'
The SQL being executed was: SELECT id FROM translation localNames WHERE (localNames.type=1) AND ((translation.language_id='1') AND (translation.type=1) AND (translation.entity_id=9495)) LIMIT 2

Q
A

Yii version
2.0.12-dev

PHP version
7.0.14

Operating system
Linux

UniqueValidator ->prepareConditions seems to be the problem spot. Is it really neccessary to prefix column name with a table name?

Ok I dug a little deeper and this functionality was added as a partial fix for #13704
There is a issue that tries to solve the problem #13842
And a pull request #13857
But it seems the solution has been stalled :(

Closing this one as duplicate.


Suggested PowerShell Script is broken due to missing or misnamed Windows Feature

Hello! At step seven (7) of the guide to prepare a Windows Server 2016 (or later) for Microsoft Identity Manager, the PowerShell script provided references a Windows Feature by the name of "Application-Server". When Running the script it outputs the following error message (in the example it is one of many features, but here I have isolated the specific feature, since it was the only one failing to install):
Install-WindowsFeature : ArgumentNotValid: The role, role service, or feature name is not valid: 'Application-Server'. The name was not found.
At line:1 char:1

Install-WindowsFeature Application-Server –IncludeAllSubFeature -Rest ...

  + CategoryInfo          : InvalidArgument: (Application-Server:String) [Install-WindowsFeature], Exception
  + FullyQualifiedErrorId : NameDoesNotExist,Microsoft.Windows.ServerManager.Commands.AddWindowsFeatureCommand

I am running the script on a Windows Server 2022.

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

ID: ba9d25f8-acca-35b0-202b-f83a0a8c1e45
Version Independent ID: bc769b6d-0c19-2590-a834-743620172fe9
Content: Configure Windows Server 2016 or later versions for MIM 2016 SP2
Content Source: MIMDocs/prepare-server-ws2016.md
Product: microsoft-identity-manager
GitHub Login: @billmath
Microsoft Alias: billmath

Thank for submitting this. I have created a work item for it and will reviewing this in the coming weeks. I am not sure what the timeline will be, so I am going to close this for now. But once I have an update I will drop it in here and let you know.
Thank you!
Bill
#please-close


Install Aurora wrapper patch for logitech does nothing

What are you experiencing an issue with?

[x] Aurora
[ ] Aurora supported game, (Fill in the game)
[x] Aurora Wrapper
[ ] Aurora Profile
[ ] Aurora supported device, (Fill in problematic devices)
[ ] Aurora Scripts
[ ] Aurora Updater
[ ] Aurora Lighting issue
[ ] Other, (Fill in another issue here)

What kind of an issue is it?

[ ] Crash
[ ] Performance problems
[ ] Visual bug
[ ] Localization issue
[ ] Enhancement suggestion
[ ] Device issue
[x] Other, (GUI issue)

Expected behavior:
Clicking on the option under the devices and wrappers option or the game with the same option should create a file in C:\Program Files\Logitech Gaming Software\SDK\LED with a message saying patch succesfull or something, or showing an error log if it failed
Actual behavior:
Nothings happens, not even a warning or a error message, not even creates the corrsponding file
How often does this problem occur?

This problem occurs... (Every time)
Please describe the steps to reproduce this issue:
The issue can be reproduced by doing following steps:

Open aurora elevated as admin or without privilegies
go to options/device & wrappers
Click on Install Aurora wrapper patch for logitech (applies for gaming profiles with the option too)
Nothing happens

What is the version of Aurora you are experiencing this issue with?

My version is... (0.6.1 dev-2)
Does the previous version of Aurora have this issue?
The previous version, (below 0.6.1-dev-2 is fine, even dev 1), did/did not have this issue.
Please include any logs, screenshots, or files that are related to this issue:
there are no logs

Duplicate of #699. See explanation there.


Integration testing with KEVM semantics and K frontend

please use https://github.com/kframework/k/tree/priority-group  this branch

This is actually related to the build failures on evm-semantics with the frontend and backend masters; that's for #988.

i see. I'll leave the comment there.

This was related to some build failures on evm-semantics, but I haven't heard any complaints about that.


Sublime style Column Selection does not work after Atom Update Version 1.9.0

Hello,
After updating to Atom Version 1.9.0, I do not seem to be able to column select text anymore with the Sublime style column selection plugin.
It was very useful, could you please check what caused it to stop working and perhaps release a fix for it to work in the new Atom Version 1.9.0?
Thank you very much,
Edward

This problem has already been reported in #103 I think.

@cbrnr These issues are supposed to be fixed by 1.7.2 but it still doesn't work for me on any 1.9.x version.
Tried to uninstall/reinstall the package, restart Atom, etc...still doesn't work just as if the package isn't installed...

I'm on Atom 1.9.8, and the plugin is working (1.7.2)...

Well, I've just tried disabling all other plugins and it's not better...I'll have to reset my config...

Just renamed .atom folder to create a new one and the plugin works fine...just have to make my config again now :o(

Ok, just understood my problem: When reinstalling the plugin before 1.7.2, my settings have been reset and I havent reset the select key to "None" since I only use the middle button...and I've since tried each of Alt and Middle button, but not both at the same time... Setting the key to "None" works as expected!

So I guess this issue can be closed then.

FYI.  I am also experiencing this problem.  It is as if block select mode is never triggered, will attempt to investigate further if I can reproduce this on another instance of Atom + Package.

Setting the modifier key to None and then back to Alt fixed this for me as well.
Using Atom 1.9.8.
Weird how it started working again...

Using Atom 1.9.7 and plugin 1.7.2, can't get it to work at all. Tried changing key options but no luck.

Is there an update log or something for Atom? I updated "script" plugin and possibly Atom and block selection has started working again.   Without knowing what was updated recently I am not sure if I can attribute it to something be "fixed" or just dumb luck.


WSL Distro gone after running the script

Sorry for posting this. This is a request for help. I did run the Win.10.2<IP_ADDRESS> script following the Youtube video from Chris Titus. Unlike in the video I chose to create a restore point at the start of the script.
After the script was done. I can't find my Ubuntu 18.04 distro anymore. I recovered to the restore point, but wsl still says there are no distros installed. Unfortunately, I created a pretty big repository that I didn't push to Github. (I know this was stupid! I don't know why I don't created this project.) Do you know if I can undo the distro deletion?
Desktop (please complete the following information):

Windows build: 19042.423

Very bad. I'll do some tests...

That would be great. Thank you.

Actually I do not how to test but here's my thoughts
# Change %TEMP% environment variable path back to default
# https://github.com/microsoft/WSL/issues/5437
if (-not (Test-Path -Path $env:LOCALAPPDATA\Temp))
{
	New-Item -Path $env:LOCALAPPDATA\Temp -ItemType Directory -Force
}
if (-not (Test-Path -Path $env:SystemRoot\TEMP))
{
	New-Item -Path $env:SystemRoot\TEMP -ItemType Directory -Force
}

[Environment]::SetEnvironmentVariable("TMP", "$env:LOCALAPPDATA\Temp", "User")
[Environment]::SetEnvironmentVariable("TMP", "$env:LOCALAPPDATA\Temp", "Machine")
[Environment]::SetEnvironmentVariable("TMP", "$env:LOCALAPPDATA\Temp", "Process")
New-ItemProperty -Path HKCU:\Environment -Name TMP -PropertyType ExpandString -Value %USERPROFILE%\AppData\Local\Temp -Force

[Environment]::SetEnvironmentVariable("TEMP", "$env:SystemDrive\Temp", "User")
[Environment]::SetEnvironmentVariable("TEMP", "$env:SystemDrive\Temp", "Machine")
[Environment]::SetEnvironmentVariable("TEMP", "$env:SystemDrive\Temp", "Process")
New-ItemProperty -Path HKCU:\Environment -Name TEMP -PropertyType ExpandString -Value %USERPROFILE%\AppData\Local\Temp -Force

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" -Name TMP -PropertyType ExpandString -Value %SystemRoot%\TEMP -Force
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" -Name TEMP -PropertyType ExpandString -Value %SystemRoot%\TEMP -Force

# Adding "swap=0" to the .wslconfig
# https://github.com/microsoft/WSL/issues/5437
if (-not (Test-Path -Path "$env:HOMEPATH\.wslconfig"))
{
	$wslconfig = @"
[wsl2]
swap=0
"@
	# Saving .wslconfig in UTF-8 encoding
	Set-Content -Path "$env:HOMEPATH\.wslconfig" -Value (New-Object System.Text.UTF8Encoding).GetBytes($wslconfig) -Encoding Byte -Force
}
else
{
	$String = Get-Content -Path "$env:HOMEPATH\.wslconfig" | Select-String -Pattern "swap=" -SimpleMatch
	if ($String)
	{
		(Get-Content -Path "$env:HOMEPATH\.wslconfig").Replace("swap=1", "swap=0") | Set-Content -Path "$env:HOMEPATH\.wslconfig" -Force
	}
	else
	{
		Add-Content -Path "$env:HOMEPATH\.wslconfig" -Value "`nswap=0" -Force
	}
}

# Restart required

Do not know whether it help. But it'll be better to see what's going on remotely. May be within TeamViewer.

Just found in Google: https://dev.to/kapilgorve/move-install-wsl-distro-from-c-drive-to-another-drive-19g9
Does lxrunoffline list show your distro?

I have something else with WSL after running the script, it wont resolve any url, looks like a dns problem. Getting ping: github.com: Temporary failure in name resolution

#43

Unfortunately this didn't work for me the distro is still not there. Bummer, but I will get over it. I will have to recreate my project. Will be probably faster this time :(.
Anyhow, thanks a lot for caring.

Think you should find distro in default folder: https://github.com/MicrosoftDocs/WSL/issues/251


Failed to import - UUID / Buffer

Failing module

GitHub: https://github.com/uuidjs/uuid
npm: https://www.npmjs.com/package/uuid

import uuid from<EMAIL_ADDRESS>
It contains this statement:
import { Buffer as __Buffer$ } from "/v109/node_buffer.js"

Which leads to https://esm.sh/v109/node_buffer.js
This url (https://esm.sh/v109/node_buffer.js) is currently returning a Cloudflare 1016 Origin DNS error.

This also seems to affect the playground: https://playground.esm.sh/

fixed, sorry for an invalid config update of the CDN

@ije Thanks for the speedy response!

This also seems to affect the playground: https://playground.esm.sh/

i updated the playground url to https://code.esm.sh/

fyi, i just updated the checker script to avoid this happens again


Make ERC20 Tokens a top-level concept?

Should ERC20 Tokens be a top-level concept just like Ether is?

So would this mean that we'd have to automatically generate the functions that deal with handling such tokens?
Here's a fundamental question: would the notion of an "interface" be useful? An interface defines several methods that belong together. For example, those for an ERC20 token or those for running a decision process. A particular contract could implement several interfaces. Or, alternatively, would one model these differnet parts of a "system", let's say, an ERC20 token plus a decision, as separate contracts? If so, how do you express that they, together, make up a system? I have not seen mechanisms yet for either modularizing a contract and/or assembling systems from multiple (tightly collaborating) contracts.

An ERC20 token certainly has a defined interface and I think that interfaces in general are very useful for abstraction. This story is more about making ERC20 tokens a built-in that does not require declaring its interface in a source file that needs to be imported.
My general feeling is that it would be useful to support systems of multiple contracts which are linked together by their addresses, perhaps declared in some deployment configuration file.

 I.e., there are native methods on the context expressions? Or to make it a first-class language construct (like a process) and then generate the low-level functions?

I'm not really sure what the best solution should  be, but I think it should receive a much higher priority in the language itself than it dose in e.g. Solidity. In Solidity, you can do
TokenInterface(0x1234...).transfer(10, someOneElse);
but only if you define the TokenInterface interface at some point in your code.

what kind of thing exactly is the
`TokenInterface(0x1234...)....``

Ah sorry: It is an explicit cast from a plain address to a contract type. This is how you use it if you have a fixed address. In practice it would rather look like:
contract C {
   // ...
   function getRidOfTokens(TokenInterface tokenType, uint amount, address recipient) {
       tokenType.transfer(amount, recipient);
    }
}


New SDK feature disablers + USB disabler fix with DEBUG builds

Description

Building an app with disabled USB would not work with DEBUG builds since on devices other that the Nano S, the printf implementation uses the USB
The UI (NBGL or BAGL) can be completely disabled for faster compilation when not needed (Ethereum plugins for example)
Fixed builds with seproxyhal not enabled + added a disabler for it in the standard_app Makefile

Changes include

[x] Bugfix (non-breaking change that solves an issue)
[x] New feature (non-breaking change that adds functionality)
[ ] Breaking change (change that is not backwards-compatible and/or changes current functionality)
[ ] Tests
[ ] Documentation
[ ] Other (for changes that might not fit in any category)

Codecov Report
Patch and project coverage have no change.

Comparison is base (d31f67c) 69.09% compared to head (86378e9) 69.09%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #397   +/-   ##
=======================================
  Coverage   69.09%   69.09%
=======================================
  Files          11       11
  Lines         864      864
=======================================
  Hits          597      597
  Misses        267      267

Flag
Coverage Δ

unittests
69.09% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Add integration testing for version sets that must pass before updating version index

Related to #66, followup to #75.
I wonder if there's some way we can re-use the E2E tests from the Sway repo for this? E.g. fetch the sway repo, patch the forc and fuel-core versions used and run those tests?
We only really need the tests that check the integration of forc and fuel-core, so e.g. the contract deployment ones, running scripts and checking their results, etc. Perhaps we could filter out the language tests.
Alternatively, we can start adding our own integration tests here. That said, I can't think of many forc+fuel-core integration tests that would be only be beneficial here that would not also be beneficial at the Sway repo. It would be a shame to have some test here that could have been added to Sway and caught some incompatibility bug earlier in the release process.

Correct me if I'm wrong: the e2e tests in the sway repo here are enough to guarantee that the latest forc release works with whatever the version of fuel-core was being used in the tests (especially since there are tests that run on the config run_on_node), however it is not enough to guarantee that if a new fuel-core version was released without a new forc release, we don't know for sure that the new fuel-core is compatible - hence the need for this issue.
So the problem is again the decision of where these checks live like we discussed in #66, whether it should be a push-based check or a pull-based check.
If we opt for a push-based check, I imagine we could have fuel-core, on release, trigger a workflow_dispatch event within the sway_repo to run integration tests with the new fuel-core version somehow. Then we'd need a way to communicate whether it passed or failed to fuelup.
The alternative is to use this repo to, again, poll for new releases, checkout the code and run them on the CI here(?). Again, it seems like both solutions aren't perfect but I think it'd be messier if we left it up to the sway or fuel-core repos. I think sticking to the maxim of ignorance of fuelup is a good way to go here?

It would be a shame to have some test here that could have been added to Sway and caught some incompatibility bug earlier in the release process.

Agreed, I think tests should be written in the Sway repo, and we just need to decide if we want to check compatibility here (by pulling code from both repos and running tests), or in the Sway repo.

Correct me if I'm wrong: the e2e tests in the sway repo here are enough to guarantee that the latest forc release works with whatever the version of fuel-core was being used in the tests (especially since there are tests that run on the config run_on_node), however it is not enough to guarantee that if a new fuel-core version was released without a new forc release, we don't know for sure that the new fuel-core is compatible - hence the need for this issue.

Yes exactly :+1:

So the problem is again the decision of where these checks live like we discussed in https://github.com/FuelLabs/fuelup/issues/66, whether it should be a push-based check or a pull-based check.

I think it might make sense to pull for these, particularly as we only need to test upon detecting a new release from either fuel-core or forc. I'm imagining something along the lines of:

Cron checking for new releases
New release detected
Work out fuel-core and forc versions to test together
Fetch sway repo (probably another good case for using shell script :smiling_face_with_tear:)
Run the E2E tests with forc and fuel-core versions to test. Possibly use a regex to filter for the integration tests.
Upon success, update toolchain versions in the index.
Upon failure, leave toolchain versions as they are and record somewhere the version set that failed (this should be checked before running the tests, otherwise if there's a failure the cron-job will just keep running the same failed tests over and over).

^ @binggh what are your thoughts on something like this?

Sounds good! Unfortunate that we have to once again rely on scripting for this but given that it's a part of the CI and not really a part of the fuelup package itself it seems acceptable to me.
I'd probably implement it somewhere along the lines of the current index-versions script as well - checking for new releases on a 30 minute time interval.
Just to be clear - is it ok if the tests are run against a fuel-core binary, or is it necessary to build fuel-core from source, or run it within docker just like how the Sway repo does it as well? Or was running from docker out of necessity?

Just to be clear - is it ok if the tests are run against a fuel-core binary, or is it necessary to build fuel-core from source, or run it within docker just like how the Sway repo does it as well? Or was running from docker out of necessity?

Whatever's easiest I think! I don't use docker and haven't had any troubles when running the E2E tests locally.


Use original code snippet for macro which contains invalid syntax

Closes #1577.
I recently added a commit that allows rewriting of macro to fail on the rhs of assignment,
so that rustfmt can try to put the macro on the next line.
This seems to  work reasonable, although when macro contains invalid syntax, the whole trial is meaningless since it will eventually fail.
This PR avoids it by returning the original code snippet from rewrite_macro when parsing failed.

Thanks! I updated a test and rebased.

Thanks!


Feature: Implement WHERE command

The WHERE command will be used to essentially "quick search" for the name of any lower tier object(Cluster or Record). and return the complete hierarchal location of that object.
Possible examples:
WHERE foo - Would look for any lower tier object with the name foo and return the result of each occurrence
WHERE record foo - Specifically looks for a record called foo and returns the result. The same could be done using cluster

done


Consider adding compression to the hypertable setup

This will typically be part of the very specific configuration required for every deployed instance and should fall under the responsibility of the database maintenance engineer. The configuration as such is simple (see https://docs.timescale.com/use-timescale/latest/compression/about-compression//) but deciding on a proper setup for the general case is non-trivial.
As such, this will be closed without fixing.


Progress Bar on Pycharm?

Hi I'm currently using Pycharm to run remote jupyter server, but when I'm training (using fastai2), the progress bar simply grey and not running at all (the train still ran and finished)
Thank you!

It seem simple widgets don't work in Pycharm so you should use the console behavior:
from fastprogress.fastprogress import force_console_behavior
master_bar, progress_bar = force_console_behavior()

Just for future reference, the reason PyCharm output with the regular progress bar doesn't work is that self.out.update does nothing in PyCharm. I found a number of issues in the PyCharm bug tracker which seem to confirm that progressively updating display output using display_handle = display(..., display_id=True) and display_handle.update() has no effect.
You can render the HTML just fine like this:
from IPython.display import clear_output, display, HTML
display(HTML(mb.html_code))

where mb is the master bar. This renders the correct output -- but there seems to be no way to make it interactive/animated such that it updates over time in PyCharm.
One of the jetbrains bug reports: https://youtrack.jetbrains.com/issue/DS-3383/IPythondisplay-update-problem


Add SINGLE and PROMPT parameters.

Changing settings for SINGLE and PROMPT is required for CIS 1.5.4 - 1.5.5.  This PR enables these to be set and sets the recommended settings by default.

great addition @foonix We had some troubles with latest travis tests. We fixed those in our latest master. Could you rebase your branch please?

Done, thanks!

The CIS recommendations for server hardening are to set PROMPT=no and SINGLE=/sbin/sushell.  Would you like to switch back to the OS default?  It's not a problem for me but it seemed the more secure settings would be good for defaults.

@foonix I would like to make this a two step approach. First, add the flexibility, Second activate it. I'd like to ensure that we change behavior with the required version bump. Does that make any sense?

Thanks for the feedback.  Done and done.

@foonix Great work. Thank you very much!


Fix missing paren in README.md

Eddie!!!
Can you please hook us up with a signed CLA? https://github.com/sendgrid/sendgrid-nodejs/blob/master/CONTRIBUTING.md#cla
I'm sure you'll be contributing more in the future :)


Some Products on Prod don't have corresponding requestedProject which leads to Prisma Validation Error on Edit

Description:
Some Products on Prod don't have corresponding requestedProject which leads to Prisma Validation Error on Edit.
Jennifer Dowd tried to change contacts for the Product with licencePlate: 534380
The Submit button doesn't let it through. Me and Zhanna could reproduce the bug.
The problem is that Prisma schema needs requestedProject keys on validation and doesn't let to make any changes to the Product.
The Product itself is created in 2020. We looked at other Products and found another one with licencePlate: a3e512
DoD:
Write a script which will find such Products and create minimal required corresponding documents in requestedProject table of DB for them.

there are many projects with out the initial request:
0d0eec
0dff19
17db4f
1b91ec
1dbf2e
1f9996
1fd77b
269007
27e8b8
3a0694
3b2420
47ba99
461a32
48aa05
2d982c
4a9599
534380
55b94d
59e31e
5b7aa5
77c02f
735b8b
74a571
7d3aa1
7e154b
7d321c
8878b4
9daef1
a40635
a3e512
a99fd4
aa27f1
acf456
ad204f
ad3577
ab537b
acc72b
afffe0
b07b69
b183a5
b48f1e
b5f574
b4f134
b8531e
b25be4
bbe4c3
c00d40
bf01c0
c207ac
c52cb8
c57b8f
c6af30
c5aa9e
ca94a8
ccc129
cef916
cef9ac
d3d940
dab7fb
de957b
deb54b
dc383e
e24757
e34374
e09bc1
e0cee6
e11dbf
e4589f
e82e9a
e84410
e704e1
e7c518
e903c2
e8470a
e8b9ad
ed9154
ed57f0
ee74a4
f0431b
f047a2
f5dfb9
f6b17d
te1690b
ffcb5f


Remove FMODGMS from the framework

The following commits are dedicated to removing the FMODGMS extension from the framework, so that developers using this framework are not handcuffed to FMOD's licensing requirements and no future changes need to be made to accommodate said requirements.

You've done very good work here, thank you for this.


Using ARCHS error in my M1 Chip MacbookPro - Every App Revision

Hi,
I have a problem in my app/apps.
I want to update my apps after little time later in Flutter. But every time I see this errors.

Launching lib/main.dart on iPhone 12 Pro Max in debug mode...
Running pod install...                                             720ms
CocoaPods' output:
↳
Preparing

Analyzing dependencies

Inspecting targets to integrate
  Using `ARCHS` setting to build architectures of target `Pods-Runner`: (``)

Fetching external sources
-> Fetching podspec for `Flutter` from `Flutter`
-> Fetching podspec for `device_info` from `.symlinks/plugins/device_info/ios`
-> Fetching podspec for `onesignal_flutter` from `.symlinks/plugins/onesignal_flutter/ios`
-> Fetching podspec for `package_info` from `.symlinks/plugins/package_info/ios`
-> Fetching podspec for `path_provider` from `.symlinks/plugins/path_provider/ios`
-> Fetching podspec for `shared_preferences` from `.symlinks/plugins/shared_preferences/ios`
-> Fetching podspec for `syncfusion_flutter_pdfviewer` from `.symlinks/plugins/syncfusion_flutter_pdfviewer/ios`
-> Fetching podspec for `url_launcher` from `.symlinks/plugins/url_launcher/ios`

Resolving dependencies of `Podfile`
  CDN: trunk Relative path: CocoaPods-version.yml exists! Returning local because checking is only perfomed in repo update
  CDN: trunk Relative path: all_pods_versions_d_f_3.txt exists! Returning local because checking is only perfomed in repo update
  CDN: trunk Relative path: Specs/d/f/3/OneSignalXCFramework/3.8.1/OneSignalXCFramework.podspec.json exists! Returning local because checking is only perfomed in repo update
[!] CocoaPods could not find compatible versions for pod "OneSignalXCFramework":
  In Podfile:
    onesignal_flutter (from `.symlinks/plugins/onesignal_flutter/ios`) was resolved to 3.2.7, which depends on
      OneSignalXCFramework (= 3.9.1)

None of your spec sources contain a spec satisfying the dependency: `OneSignalXCFramework (= 3.9.1)`.

You have either:
 * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
 * mistyped the name or version.
 * not added the source repo that hosts the Podspec to your Podfile.

/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:328:in `raise_error_unless_state'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:310:in `block in unwind_for_conflict'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:308:in `tap'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:308:in `unwind_for_conflict'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:257:in `process_topmost_state'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:182:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.6.6/lib/molinillo/resolver.rb:43:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/resolver.rb:94:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer/analyzer.rb:1074:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer/analyzer.rb:1072:in `resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer/analyzer.rb:124:in `analyze'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:414:in `analyze'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:239:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:238:in `resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:160:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'

Error output from CocoaPods:
↳
[!] Automatically assigning platform `iOS` with version `11.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See
`https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies.
To update the CocoaPods specs, run:
pod repo update
Error running pod install
Error launching application on iPhone 12 Pro Max.

Hi @oguzhanozdemir, Thanks for filing the issue. Please share your output of flutter doctor -v.

I want to update my apps after little time later in Flutter. But every time I see this errors.

I am not sure what you meant by this, I am assuming when building the ios app the build fails with the above errors is that correct? if so
Have you tried deleting the podfile.lock and running flutter clean?
if that doesn't work please share your

podfile
pubspec.yaml
Complete output of flutter run -v in a text file.


Load page-specific styles separate from global styles

The CSS contains what appears to be component-specific styles (e.g. https://github.com/cfpb/cfgov-refresh/blob/gh-pages/static/css/activity.less) and page-specific styles (e.g. https://github.com/cfpb/cfgov-refresh/blob/gh-pages/static/css/budget.less).
Could page-specific and/or components go in their own sub-directory with static/css and appropriate documentation be provided where topdoc comments are not provided?
cc @Scotchester @virginiacc

Yes, putting page-specific CSS in a subdirectory is a good idea. Moreover, at some point, we want a solution for loading page-specific CSS ONLY on the pages that require it. Otherwise, we'll have one gigangtic singular CSS file.

Yes, that sounds like a great idea!
Just found that page-specific styles are documented in https://github.com/cfpb/cfgov-refresh/blob/gh-pages/static/css/main.less#L115-L125

Is this still an Open Issue?

Hi @GrooveCS, to an extent. We have the majority of our CSS in https://github.com/cfpb/consumerfinance.gov/blob/master/cfgov/unprocessed/css/main.less, but we do have "apps" that have their CSS and other assets isolated from the rest of the code, e.g. https://github.com/cfpb/consumerfinance.gov/tree/master/cfgov/unprocessed/apps/owning-a-home/css has its own main.less, which is only delivered to that app (live site) via the reference in its template https://github.com/cfpb/consumerfinance.gov/blob/master/cfgov/jinja2/v1/owning-a-home/explore-rates/index.html#L19
However, when a component is included in a page via the Wagtail CMS, that component's JavaScript gets added to the page, but its CSS is delivered everywhere. We should probably have something analogous for the CSS to how the JS works, so that the component's CSS is added into the page's CSS bundle somehow when it's included in a page via Wagtail, and exclude it otherwise. For example, the video player JS is added here, but the CSS for the video player is together with everything else in main.less https://github.com/cfpb/consumerfinance.gov/blob/master/cfgov/unprocessed/css/main.less#L129


Removing partnership items for now

The partnership items are currently not fit for purpose.  Until we have integration guides for these partners we're going to hide the content by moving it somewhere that Hugo won't render.

https://deploy-preview-252--getistio-demo.netlify.app/partners/
I guess Jimmy means this page. Rendered as 404 right now.

@incfly Yes, it is, remove the [[Languages.en.menu.main]] and [[Languages.zh.menu.main]] sections from config.toml will solve this problem.


How did you test the tracker?

Was the result mentioned in the paper obtained by Single GPU or Multiple GPU?

We use multiple GPU (typically 8 GPUs) to generate the results. And it's no matter how much GPUs using for test.


bug: docs Union tagged 2 has unexpected behavior

describe the bug
Union tagged 2 docs did't work as expected behavior.
now behavior
When enable is true, the content in Schema.object is not being displayed.
 Screenshot:

expected behavior
When enable is true, the content in Schema.object should be displayed.

I have fixed this issue and will open a pull request tomorrow.

Despite this fix, I still consider it a bug.

OK, I will keep this issue open. By the way, what is your expected code? Is it previous code?

OK, I will keep this issue open. By the way, what is your expected code? Is it previous code?

Yes.


Missing implementation for logLaunchLink option

Looks like it only exists in the README. Wondering how difficult it is to implement this? I have seen it in the agent-js-jest, unsure if it'd be more lift & shift to this project?

Hello @barking-timber !
It accidentally got into the readme before the official publication.
The implementation is quite simple, so we plan to release it in the next release, along with a few important fixes.

Oh, that's fab! Great job everyone, I'll keep an eye on the new release!

Hi @barking-timber !
Please check the version 5.1.3.

Cool, thanks!
So does it mean that with the launch UUID I can go create links like this:
<rpInstance>/ui/<projectName>/launches/all/<launchUuid>

Seems to be working, just don't want to miss anything closer to previously mentioned logLaunchLink which seems to be removed for now?

@barking-timber Yeah, you're right.

Hi @barking-timber !
We've published a version 5.1.5 that logs the link to RP launch by default.
Please refer this issue for details.

Hi folks, just on the logLaunchLink can you give me a hint on how to access the link from within Playwright execution? I'm thinking of adding it to another reporter, e.g. in the Slack notification.


API Property name validations do not work

Description:
Can add restricted property names without any UI validation issues, when show in devportal is checked.

Steps to reproduce:
Affected Product Version:
APIM 3.2.0 (U2 level 100)
Environment details (with versions):

OS:
Client:
Env (Docker/K8s):

Optional Fields
Related Issues:

Suggested Labels:

Suggested Assignees:

Fixed in latest APIM-4.4.0


switch to mediaTypeV3 for Checks Accept header

switched Accept header's value to mediaTypeV3 from mediaTypeCheckRunsPreview. Since checks run is out of preview, didn't see any value in keeping the old preview constant. (github.go)
Followed as per,

Graduation of preview: https://developer.github.com/changes/2020-10-01-graduate-antiope-preview/
Docs: https://docs.github.com/en/free-pro-team@latest/rest/reference/checks

I signed it!

@googlebot I fixed it.


Startup exception on raspberry pi

Hi,
followed the sample and created an empty ASP.NET Core project. Building the app on my Win10 machine works fine.
When i generate the package for my Raspberry PI with the command
dotnet electronize build /target linux /electron-arch armv7l
i get the exception below. Electron 1.7.11 is installed on the raspi, node is 8.11.1 (as on my Win10 machine). Already tried an npm install in the resources/app directory on the raspi.
Uncaught Exception:
Error: spawn EACCES
at exports._errnoException (util.js:1050:11)
at ChildProcess.spawn (internal/child_process.js:319:11)
at exports.spawn (child_process.js:390:9)
at portfinder (/home/pi/MediaCenterFrontend/resources/app/main.js:52:22)
at listen (/home/pi/MediaCenterFrontend/resources/app/node_modules/detect-port/lib/detect-port.js:69:11)
at Server.server.listen (/home/pi/MediaCenterFrontend/resources/app/node_modules/detect-port/lib/detect-port.js:93:12)
at Object.onceWrapper (events.js:293:19)
at emitNone (events.js:86:13)
at Server.emit (events.js:188:7)
at emitListeningNT (net.js:1290:10)

EACCES  means most probably that current user has no rights to execute the electron file.
I hope my answer helps you.

Just to make this complete. What i missed is that also used node modules can contain executables (like detect-port). these have to be runable to of course. ;)


add log entry to debug attempted rewrite rules

Scope:
This adds a debug-level log entry that reports when a rewrite rule is attempted. This is useful for determining whether attempting certain rewrite rules is a slow process, which can help debug rewrite steps that take an unusually long amount of time.
Estimate:

Review checklist
The author performs the actions on the checklist. The reviewer evaluates the work and checks the boxes as they are completed.

[ ] Summary. Write a summary of the changes. Explain what you did to fix the issue, and why you did it. Present the changes in a logical order. Instead of writing a summary in the pull request, you may push a clean Git history.
[ ] Documentation. Write documentation for new functions. Update documentation for functions that changed, or complete documentation where it is missing.
[ ] Tests. Write unit tests for every change. Write the unit tests that were missing before the changes. Include any examples from the reported issue as integration tests.
[ ] Clean up. The changes are already clean. Clean up anything near the changes that you noticed while working. This does not mean only spatially near the changes, but logically near: any code that interacts with the changes!

Just want to make sure that this gets one-line log entries enabled as well.

It has a one line log entry that just includes the source location. I've tested it, it's quite readable.


Added JS question about composite data types

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)

#14

We have a question about primitive data types so why no composite types as well?

@jdwilkin4 All edits look good. I accepted the changes.


rendering simplification / art style cohesion

Currently a mix of procedurallly generated ship textures and vector polygons for asteroids.
The 3D rotate / barrel roll is interesting, but does it add anything? I would keep the dodge mechanic perhaps but drop the 3D aspect.
I would consider making the ship simple vector polygons instead of textures.

simplify rendering pipeline to not mix 3D renderables with the scene
make art style more coherent / self consistent

alternatively, move to 3D and get rid of z-sorting?


mos_flseek can't be used (easily) from Z80 mode

mos_flseek is defined to take a 32-bit file offset in E for the high 8 bits and HLU for the low 24 bits. Unfortunately, in Z80 mode we don't have access to HLU, meaning it's difficult to seek beyond 64kB without dropping into ADL mode.
The best workaround I've come up with is:
ld hl, <something>
push.l hl
ld hl, 2
add hl, sp
ld a, <something>
ld (hl), a
pop.l hl

This seems cumbersome --- any chance of a proper 16-bit API?

(No, that code doesn't work. long pushes use a different stack pointer.)

You can access the full 24-bit registers in Z80 mode using LD.LIL HL, n, if that helps. The eZ80 is quite flexible with regards to shifting into 24-bit mode for single instructions. Please let me know if that's acceptable and I'll close this card.

Yes, there are instances where the eZ80 could be a bit more helpful. Appreciate the feedback. I'll have a think about this one.

I just ran into this exact problem with fread/fwrite.

(There's another related issue in that when passing pointers, figuring out what to put into A is essentially impossible. It seems that the eZ80 has no legal ways of fetching MB from Z80 mode! The ld a, mb instruction is explicitly documented as being a nop in Z80 mode... I eventually had to hardcode a 4 here.)

I'm not sure how stable it is (in terms of ABI), but grabbing ld.lil a,(iy+8) on entry will yield mb which I'm fudging into pointers.

I must be doing something wrong way.  I'm experimenting with MOS command in Z80 mode.  The program header looks:
00003B                   0069 ; MOS program header
00003B                   0070           ; there is space for code, data up to
00003B 00 00 00 00 00    0071           .align  $40
000040 4D 4F 53          0072           .db     "MOS"           ; MOS command magic number
000043 00                0073           .db     0               ; header version
000044 00                0074           .db     0               ; Z80 binary

And then somewhere in the program I do:
00010E                   0183           ; LD A,MD in Z80 mode should be NOP according
00010E                   0184           ; to Zilog documentation.  Lets see.
00010E 21 B1 01          0185           LD      HL,MSG_MB
000111 CD C4 01          0186           CALL    PRSTR
000114 3E 21             0187           LD      A,$21
000116 ED 6E             0188           LD      A,MB
000118 CD EF 01          0189           CALL    PRHEX8
00011B CD CB 01          0190           CALL    PRCRLF

When running, I got
MB: 0B

which is correct value.

@radekh : maybe CALL PRSTR or something before turns ADL to 1 and we are not in Z80 mode anymore ?

@radekh : maybe CALL PRSTR or something before turns ADL to 1 and we are not in Z80 mode anymore ?

I'm new to eZ80.  You can check if I'm doing anything suspicious.  I recently pushed the code I use in this test into GitLab https://gitlab.com/Radek.Hnilica/agon-light-playground/-/blob/main/sysvars/sysvars.lst
You can also notice the LD A,MB is in the start code, which I rip from somewhere else.  Sadly can't remember now from where.

@radekh
I spent some time to read the ez80 docs, and it appears to be far more complicated than I thought at first glance.
Anyway, it seems to me that Agon-Mos is running in MIXED mode (ADL=0 or 1, MADL=1) and the documentation doesn't really say what LD A,MB does in this MIXED mode. With ADL=0 and MADL=1 it should be NOP;NOP, but I would understand if the designers returned the MB flag when MADL=1, which means your program knows about paging.
Second thought, I read the beginning of your code, and the first thing you do is a conditional jump over the value of undefined A after a LD A,MB, which is supposed to be totally undefined. That is suspicious by definition. Next you mangle with the stack in ways I don't get yet, depending on the result of the random test I described above, which raises more questions.
But, I am as new as you regarding the ez80, so in fact I just don't know :D

@theflynn49

Second thought, I read the beginning of your code, and the first thing you do is a conditional jump over the value of undefined A after a LD A,MB, which is supposed to be totally undefined. That is suspicious by definition. Next you mangle with the stack in ways I don't get yet, depending on the result of the random test I described above, which raises more questions.
But, I am as new as you regarding the ez80, so in fact I just don't know :D

That code I exactly ripe from somewhere.  Some INC files.  When I was making template for MOS command in Z80 mode, it did not want to work.  So I found some example, however I had to go through INI files manually doing preprocessor and picking up only code for ADL=0.  It is magic for me, however, it works.  So I put the task to get understanding of it aside, in favor of make some working program I can use for learning.
It goes slowly.  The whole instruction prefix switching of modes is still Greek for me.  Whenever I think I understand it, next instruction blow in my face.

@radekh
The "official" 16-bits app (aka z80 mode) for Agon-MOS is here :
https://github.com/breakintoprogram/agon-projects/blob/main/ASM/Hello%20World%2016/init.asm
You can see that he uses a LD A,MB instruction line 73, while being in mixed mode.
That is not a definitive proof, but it strongly suggests that MIXED mode let LD A,MB work as in ADL mode.
Hope this is convincing enough to you.

mos_fread and fwrite have the same problem but it's worse there as you're passing pointers, and the stub doesn't do 16-bit fixup the way mos_load and mos_save do. So, using 16-bit pointers is hard.

Perhaps it would have been easier if the API accepted a pointer to a parameter block rather than parameters directly in registers.


feat: [breaking-change] remove CartLineX components

Description
Final removal of "Function as a child" components from https://github.com/Shopify/hydrogen/issues/589
Before submitting the PR, please make sure you do the following:

[x] Add your change under the Unreleased heading in the package's CHANGELOG.md
[x] Read the Contributing Guidelines
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123)
[x] Update docs in this repository for your change, if needed

@cartogram Just for your reference -- here's the corresponding commit on the Shopify.dev side: https://github.com/Shopify/shopify-dev/pull/16194/commits/27c0d9cbac0e47335161ccfb591d6cf8fa8ceb51


Add timezone information to naive datetimes.

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

Haven't done any manual testing yet.

Added timestamp tests.

updated. Changed the stripe message to be more safe.

Merged, thanks @rishig!  Hopefully we found all the potential timezone issues with changing TIME_ZONE :)