Fix MulitpleAvatars alignment

Details
Replace left with margin-left for positioning MultipleAvatars, which removes the need for calculating the width, removing the issues caused by the wrong calculation of the width.
Fixed Issues

$ https://github.com/Expensify/App/issues/22632
PROPOSAL: https://github.com/Expensify/App/issues/22632#issuecomment-1631418875
Tests

Case 1:  Workspace icons are aligned to the left #22632

Open settings.
Create 5 or more Workspaces if needed.
Check the avatars in the Workspaces menu item.
Verify if the avatars are properly aligned.

Case 2: Avatars group on final screen moves to the left if admin invites more 8 users #22685

Go to the existing or create a new workspace.
Go to Workspace > Members.
Click / Tap 'Invite'.
Select more than 8 users.
Click 'Next'.
Verify if the avatars are properly center aligned.

Case 3: Split bill icons are aligned to the left #22993

Split bill with 8 users.
Check the icons on the split bill report.
Verify if the avatars are properly aligned.

Case 4:  Multiple avatars in group

Create a group of five or more.
Verify if the avatars are properly aligned.

[x] Verify that no errors appear in the JS console

Offline tests

N/A
QA Steps

Case 1:  Workspace icons are aligned to the left #22632

Open settings.
Create 5 or more Workspaces if needed.
Check the avatars in the Workspaces menu item.
Verify if the avatars are properly aligned.

Case 2: Avatars group on final screen moves to the left if admin invites more 8 users #22685

Go to the existing or create a new workspace.
Go to Workspace > Members.
Click / Tap 'Invite'.
Select more than 8 users.
Click 'Next'.
Verify if the avatars are properly center aligned.

Case 3: Split bill icons are aligned to the left #22993

Split bill with 8 users.
Check the icons on the split bill report.
Verify if the avatars are properly aligned.

Case 4:  Multiple avatars in group

Create a group of five or more.
Verify if the avatars are properly aligned.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
Case 1

Case 2

Case 3 & 4

Mobile Web - Chrome
Case 1

Case 2

Case 3 & 4

Mobile Web - Safari
Case 1

Case 2

Case 3 & 4

Desktop
Case 1

Case 2

Case 3 & 4

iOS
Case 1

Case 2

Case 3 & 4

Android
Case 1

Case 2

Case 3 & 4

@sobitneupane I've added tests for other cases with relevant screenshots, please check it.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Li357 in version: 1.3.47-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.47-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Unresolved import if sys.path modified in init.py

For projects that include external repos, it would be handy to insert the relative dependency paths ONLY when importing the necessary module.
Here is an example project layout:
Project root
+-- external repo/
      +-- lib/
           +-- config  # defines Config class
      +-- utils/
+-- mypackageA
     +-- __init__.py
     +-- app.py
main.py

In main.py,  when an app instance that depends on the Config.py module in the external repo is created, the sys.path must include external repo/lib  at the time of importing app:
from mypackageA import app
app.App()

Instead of setting the PYTHONPATH statically, an alternative is to modify sys.path in mypackageA.__init__.py by inserting paths to external repo/lib for the app module to import Config. However, vscode shows unresolved import warnings in this use case.

@farleylai, thanks for letting us know about this.  If I understood correctly, mypackageA.app.py has something like from config import Config in it.  You want the import to work automatically when using the extension, where it currently doesn't.  Is that right?  Otherwise I'm not clear on how we can help.
To get what you want, the extension would have to automatically add external repo/lib to sys.path.  However, there are 2 problems with that:

running main.py from the normal commandline already doesn't work like you want and likewise if you tried to distribute this project
how is the extension supported to know that it should add external repo/bin to PYTHONPATH?

As to #1, this situation is not unique to the extension.  I recommend using one of the existing approaches out there.

@farleylai, thanks for letting us know about this. If I understood correctly, mypackageA.app.py has something like from config import Config in it. You want the import to work automatically when using the extension, where it currently doesn't. Is that right? Otherwise I'm not clear on how we can help.

Yes, that is what I mean the path is inserted only when importing the specific module.

To get what you want, the extension would have to automatically add external repo/lib to sys.path. However, there are 2 problems with that:

running main.py from the normal commandline already doesn't work like you want and likewise if you tried to distribute this project

This alternative I mentioned is to insert the path in myPackageA.__init__.py:
import sys
sys.path.insert(0, 'external repo/lib')

I am saying the programmer has done this such that whenever app.py is imported, the statement from myPackage import app should have the additional path inserted. In this way, the main.py works as expected but VSCode does not seem to evaluate myPackageA.__init__.py when editing.

how is the extension supported to know that it should add external repo/bin to PYTHONPATH?

So my first intuition is to have the extension to evaluate myPackageA.__init__.py when editing main.py or app.py. Could that be possible?

As to the first one, this situation is not unique to the extension. I recommend using one of the existing approaches out there.

Thanks for clarifying, @farleylai.  I understand now and was able to quickly reproduce the problem.  Based on the information you've provided thus far I was able to fill in the blanks for file content, which I've included below.
Using Jedi ("python.jediEnabled": true; the default), pylint reported the error.  Using the language server ("python.jediEnabled": false), it reported the error.  Either way I got the same error you reported.
You are correct that the sys.path manipulation in mypackageA/__init__.py should be reflected in all imports of mypackageA submodules.  I consider this a bug.  However, there is a real possibility that it is a bug in pylint/language server and will have to be resolved upstream.  There may be workarounds we can do in the extension.  We'll take a look.

# main.py

from mypackageA import app
app.App()

# mypackageA/__init__.py

import os.path
import sys
PKG_ROOT = os.path.dirname(__file__)
PROJECT_ROOT = os.path.dirname(PKG_ROOT)
LIB = os.path.join(PROJECT_ROOT, 'external repo', 'lib')
sys.path.insert(0, LIB)

# mypackageA/app.py

from config import Config  # <--- error marked here
class App:
    def __init__(self):
        cfg = Config()
    ...

# external repo/lib/config.py

class Config:
    ...

Thanks for your timely confirmation.
I really hope after the issue is fixed, Go to definition would also work as expected.

Hello @ericsnowcurrently , I have a similar issue that may add value to this conversation.
I have a simple project setup
Project root
+-- mymodule
     +-- config.py
     +-- mymodule.py

I am trying to import config.py in mymodule.py using import config since it is in the same folder. This seems to work if I run from python directly, but fails when running through the IPython Kernel:

Repo Location: https://github.com/rrmistry/vscode-python-relative-import

Environment
Version

OS
Windows 10 Home 64-bit (1903)

OS build
18362.207

python
3.7.3

conda
4.7.5

VS Code python extension
2019.6.22090

VS Code details:
Version: 1.35.1 (user setup)
Commit: c7d83e57cd18f18026a8162d042843bda1bcf21f
Date: 2019-06-12T14:30:02.622Z
Electron: 3.1.8
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.18362

Here I am not sure what I am missing.
Please let me know if this should belong to a separate issue. Thanks,

Hello @ericsnowcurrently , please disregard my previous comment.
The issue I faced was trivial. The IPython Kernel's current working directory was on the Project root instead of my module sub-folder.
I discovered the correct approach upon importing a working jupyter notebook using the extension.
For reference, what is required is to add the following to the begining of mymodule.py:
#%% Change working directory from the workspace root to the .py file location.
import os
try:
	os.chdir(os.path.join(os.getcwd(), 'mymodule')) # change directory
	print(os.getcwd())
except:
	pass # ignore error in-case re-running this cell
	# (e.g. new cwd = `Project root/mymodule/mymodule`)

If no objections, I'll leave these comments here for anyone else who may run into the same issue. Thanks,

In my case the problem was solved replacing
"python.autoComplete.extraPaths": [
    "${workspaceFolder}/src"
],

for
"python.autoComplete.extraPaths": [
    "./src"
],

in my .vscode/settings.json file.
That's a little odd but it worked

@MikhailArkhipov
Security should not be a concern if VSCode or LS makes its best effort to perform compiler analysis for potential changes to sys.paths in __init__.py instead of running __init__.py directly.
@nunesvictor
This feels more like an workaround because the package developer already sets the necessary sys.paths in __init__.py. The intention is NOT to have users to change their local settings.

I have a bit similar situation, my use case is that I am developing a polyglot monorepo containing AWS Lambda functions. Depending on the use case, they are written in Go, TypeScript and Python.
I try to keep all the functions "contained" in such a way that the folder containing the AWS Lambda function source code has the manifest-file (requirements.txt in Python's case) and all its dependencies within it. This works well for AWS Lambda as it requires having all the dependencies bundled in the deployment package and also for local development with lambci/lambda Docker.
I've initialized each of the Python AWS Lambda functions with their own virtual environment python3 -m venv .venv and then installed vendor dependencies with pip install --upgrade -r requirements.txt.
Then in the AWS Lambda source code stored in src/lambda/<function-name>/main.py I have the following:
For Python AWS Lambda functions I
from pathlib import Path
path = Path(__file__).parent.absolute()
sys.path.insert(0, str(path) + "/.venv/lib/python3.7/site-packages")
log.debug("sys.path:" + str(sys.path))

Where of course the <function-name> is replaced with the actual function name.
This works fine for the local development in lambci/lambda Docker and in actual AWS Lambda environment.
The problem is that VS Code linter and intellisense doesn't keep up with that solution.
I can get the VS Code linter & intellisense working by defining in ${workspaceFolder}/.env file the following:
PYTHONPATH=src/lambda/<function-name>/.venv/lib/python3.7/site-packages

The problem here is that I may have several of these functions, let's say foo and bar. Of course one can set multiple folders into PYTHONPATH separated by os.pathsep, which would mean I'd have to configure:
PYTHONPATH=src/lambda/foo/.venv/lib/python3.7/site-packages:src/lambda/bar/.venv/lib/python3.7/site-packages

… to get the dependencies of foo and bar AWS Lambda functions to work in VS Code.
Unfortunately this becomes problematic as I might have quite many different AWS Lambda functions, so I'd have to define all the different AWS Lambda source code folders into PYTHONPATH which will become tedious task.
So it'd be nice if there was a singular method for defining the dependencies path for these Python AWS Lambda functions, that would work for the actual code (in AWS Lambda & in lambci/lambda) and in VS Code.

Parsing source to extract sys.path manipulations is unfortunately something we will not be implementing.


Bump minimum required Java to 11

Motivated by dependencies (tools and plugins) that need at least Java 11. Anybody still on Java 8?... Seems like ancient history. I think bumping the minimum to 11 seems ok.

For reference - a lot of enterprise software still very much depends on JDK8. If not for anything, for the sake of compatibility with other enterprise clients. Unless the move to JDK11+ is a must (feature wise), JDK8 compatibility should remain.

I understand corporate needs but... you know - this is a hobby project... Realistically, I don't think I even have JDK 1.8 anywhere around... I think we'll stick with JDK11 as the minimum. I'm sorry if it adds grit to your workflow.


Backport verboness reduction to 2.9.x and release 2.9.2

@malaporte this PR makes 2.9.x branch usable by reducing the verboseness over skipped directories (backport of a commit on master) and upgrades the version to 2.9.2.
Would it be possible to push a release to the maven repos?

We could make a new 2.9.x release, but it would use the new com.spotify.fmt groupId, would that work for you @aaime ?

@klaraward it would have, but in the meantime we switched to Spotless.... so you can also just close this one.


Page forbidden for edit profile page

Browsing to http://website/account/edit_profile as guest leads to an uncaught exception. Let's send a page_forbidden response (btw page forbidden still redirects to login... is this correct?)

@mlocati is right we use there interface to make it possible to swap out
the instance with any implementation at all.
On Wed, Sep 28, 2016 at 1:31 AM Michele Locati<EMAIL_ADDRESS>wrote:

@mlocati commented on this pull request.
In concrete/controllers/single_page/account/edit_profile.php
https://github.com/concrete5/concrete5/pull/4413:

class EditProfile extends AccountPageController
{
public function view()
{
$u = new User();
$profile = UserInfo::getByID($u->getUserID());

   if (is_object($profile)) {

       $this->set('profile', $profile);

   } else {

       throw new Exception(t('You must be logged in to access this page.'));

   if (!is_object($profile)) {

       return $this->app->make(ResponseFactoryInterface::class)->forbidden(t('You must be logged in to access this page.'));

We want something with a ResponseFactoryInterface, whichever is
configured by default (and yes, by default it points to ResponseFactory
https://github.com/concrete5/concrete5/blob/0946f81b56a71f053013c9b2d7fc34cc74c5e3f5/concrete/src/Http/HttpServiceProvider.php#L46
)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/concrete5/concrete5/pull/4413, or mute the thread
https://github.com/notifications/unsubscribe-auth/AA9fO_F0nM2NmMr_PFHYAXFRs5-7pSotks5quiXNgaJpZM4KHpIT
.

Hmm, this points to a bigger problem. We should never actually even get to that exception, because this is supposed to be replaced by the login page:
https://github.com/concrete5/concrete5/blob/develop/concrete/src/Page/Controller/AccountPageController.php#L18
on_start() fires before view().

You're right about that, we should be detecting a replacement on the controller and rendering the replacement instead.

Better solution: #4495


possible obsoletion of mitotic/meiotic transcription terms

I found some more odd transcription terms
suggest obsoletion
1# regulation of transcription during mitosis
(I doubt we mean 'mitosis" as in nuclear division
more likely this means
regulation of tanscription during mitotic cell cycle)
PomBase 11 (query the ace2 ones)
2# negative regulation of transcription during mitosis
SGD 6
PomBase 6
Flybase 2
3# positive regulation of transcription during mitosis
PomBase 3
For these  we would be happy to capture  by adding an extension to the transcription terms to capture  the relevant phase.
ALSO
positive regulation of transcription on exit from mitosis ; GO:0007072
is under this term..... I'm not sure that it should be (what does "on exit?" mean?)
does it mean after M-phase?
Reported by: ValWood
Original Ticket: geneontology/ontology-requests/10399

I think this one is pending obsoletion notice and migration of existing to the
"regulation of transcription during mitotic/meiotic cell cycle"

@ValWood :  I dug into the history a bit.  It looks like the terms for the meiosis regulation tsc terms were transformed from 'regulation of transcription, meiotic' to 'regulation of transcription during meiosis' to 'regulation of transcription involved in meiotic cell cycle' all while retaining the same id. (done in 2015)
Example:
http://www.ebi.ac.uk/QuickGO/GTerm?id=GO:0051037#term=history
What if we just do the same for the mitosis terms?
Convert all 'during mitosis' (or , mitotic) to 'involved in mitotic cell cycle?
*regulation of transcription during mitosis
*positive regulation of transcription during mitosis
*negative regulation of transcription during mitosis
*regulation of transcription from RNA polymerase I promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis
*regulation of transcription from RNA polymerase II promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis
*regulation of transcription from RNA polymerase I promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis
What about these?  Are they good as is?
*positive regulation of transcription on exit from mitosis
*positive regulation of transcription on exit from mitosis, from RNA polymerase I promoter
*positive regulation of transcription on exit from mitosis, from RNA polymerase II promoter
*positive regulation of transcription on exit from mitosis, from RNA polymerase III promoter

Hi Tanya,
I don't think we can do that. These really are "during".
So   this is more about the distinction between "mitotic nuclear division" and "mitotic cell cycle"
All  these transcription terms mean is that the transcription occurs during the mitotic cell cycle.  In known cases where they are involved, a term already exists
http://www.ebi.ac.uk/QuickGO/GTerm?id=GO:0000083#term=ancchart
this term could have the "involved in" parent you suggest. But, the other annotations to the existing "during" terms are not involved in cell cycle regulation.
For example, the genes transcribed can include every cellular process  which occurs during the mitotic cell cycle.
I don't know about
"positive regulation of transcription on exit from mitosis"
(exit from mitosis is not a well defined process, and  I'm still not convinced that it isn't really a transition, rather than a process)...I hope to follow up on this at some point when I move onto cytokinesis (Need to finish chromosome segregation first) so maybe these  terms can hang around for a while longer.

positive regulation of transcription on exit from mitosis
only has 3 annotations.  it wont do any harm . However the confusion in the other terms between
during
mitosis = GO:0007067	mitotic nuclear division
and
(incorrect)
and during
GO:0000278 mitotic cell cycle
(correct)
Longer term "during" terms can be made consistently with annotation extensions, so potentially longer term these can all go....

Actually I think you can make these terms
'regulation of transcription involved in mitotic cell cycle'
but I would not automatically merge the old term unless the annotations are checked individually (I think the other ones were)

Val - there are no 'involved in mitotic cell cycle' terms to merge into.  There are only the existing 'during mitosis' and ',mitotic' terms.  If renaming is fine, that makes the job a WHOLE LOT easier.

No this was the problem.
The phrase "during mitosis" appears to be used as shorthand for "during mitotic cell cycle" in the same way that  "during meiosis" was used as shorthand for "during meiotic cell cycle"
The scan of the annotations validated this, because it is used for transcription  which occurs "during the mitotic cell cycle"  but which is NOT "during mitosis"
Clearer?
There are 2 solutions
i) change all terms and logical definitions to "during mitotic/meiotic cell cycle" not "during meiosis/mitosis"
or
ii) obsoletion  (probably better as the terms are not really required)
this problem all comes back to these ticket:
https://github.com/geneontology/go-ontology/issues/10864
https://github.com/geneontology/go-ontology/issues/10690

Ok.  I'll write up an obsoletion email for these terms:
*regulation of transcription during mitosis
*positive regulation of transcription during mitosis
*negative regulation of transcription during mitosis
*regulation of transcription from RNA polymerase I promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis
*regulation of transcription from RNA polymerase II promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis
*regulation of transcription from RNA polymerase I promoter, mitotic
*positive regulation of transcription from RNA polymerase I promoter during mitosis
*negative regulation of transcription from RNA polymerase I promoter during mitosis

I thought they had already been cleared for obsoletion. But I guess there are more terms now. I see what you mean. You could change all to
"during mitotic cell cycle", which is broader.

Yes, I started with just the root term but when I went to look at annotations, I saw the raft of children terms and that's kind of where it stalled.

This is the spread of annotations to 'regulation of transcription during mitosis' and children

If looking at only experimental annotations:

I would change to the "mitotic cell cycle" for now, which is how the terms have been used. At some future date we might want to visit the value of "precompostition" of these  transcription "during" terms

I would change to the "mitotic cell cycle" for now,

To be absolutely clear, this means changing '% regulation of transcription % during mitosis' or 'regulation of transcription from RNA polymerase [I or II] promoter**, mitotic**' to '%regulation of transcription % involved in mitotic cell cycle' and 'regulation of transcription from RNA polymerase [I or II] promoter involved in mitotic cell cycle'.
Final answer?

Nearly;)
All should still be during not involved in (these are different)
All should be during mitotic cell cycle, not during mitosis

Ok, restating:

[ ] '% regulation of transcription % during mitosis' change to '%regulation of transcription % during mitotic cell cycle'

[ ] 'regulation of transcription from RNA polymerase [I or II] promoter**, mitotic**' change to 'regulation of transcription from RNA polymerase [I or II] promoter during mitotic cell cycle'.

Yes, sorry for the confusion!

OK, done and done.


District selection by map

Describe the bug
When someone howers the mouse on any district on the district map, it shows the related info in the right side.
That's good.
But when someone clicks on any district to make the selection to see the related info in the right area, it shows that.
But after removing mouse from the selected district, the selected district changes.
That's not good.
To Reproduce
Steps to reproduce the behavior:

Go to 'https://www.covid19india.org/state/BR'
Click on 'any district in the map'
Remove the mouse from there
See error

Expected behavior
The selected district should not change after clicking on any district without deselecting.
Screenshots

Desktop (please complete the following information):

OS: [Win 10]
Browser [chrome]
Version [84]

Additional context
Add any other context about the problem here.

/available

/claim


Add view_component_path option to ViewComponent::Base

Summary

Another little refactor proposal that came up while working on #980...
Exposes the (recently added) view_component_path option as an attribute on ViewComponent::Base. This clarifies the config option as the single source of truth for the components path and makes it more readily accessible from other parts of the engine (it's currently only used in generators, but would be useful elsewhere). It also makes the value slightly easier to modify in tests, because it's not tied to initialization.

Thanks @Matt-Yorkley !


RFP - GNU Ring

Ring is free software for universal communication which respects freedoms and privacy of its users.
Download: https://ring.cx/en/download/windows

I can create a package for Ring

The package is submitted and awaiting review


One decimal in top collections for different region

Look like it's related to the number format in different regions. I will check it
Originally posted by @Jarsen136 in https://github.com/kodadot/nft-gallery/issues/8937#issuecomment-1884780126

Look like it's related to the number format in different regions. I will check it
Originally posted by @Jarsen136 in #8937 (comment)


Request for new release

When can we expect a new release, please?
The latest (1.0.0-beta.3.0.1) has an issue when the dialogs canActivate returns false, which is fixed in dc44a34fdebfbf79129d4f4ac0c0f0009b0a2a64.

We are prepping a new big one for this month.

Thanks, I'll have to work around that issue until then.

The aurelia release did not have a new version of aurelia-dialog.
Did I miss something or was the promise of a big release not intended for aurelia-dialog (even though the issue was asked on the dialog repository).


Should cells defined by location use part_of or has_soma_part

We currently use part_of
has_soma_location http://purl.obolibrary.org/obo/RO_0002100 (shortcut for has_part some (soma and part_of some X)) is seemingly more accurate. It os what was used in NIFSTD- see #176
However, this will complicate reasoning a lot, e.g. for GO see geneontology/termgenie#71
part_of is not necessarily wrong if we change the conceptualization in the gross AO such that brain region X is considered to extend wherever processes extend. This would require weakening spatial disjointness axioms in uberon though. E.g. (part_of some midbrain) DF (part_of some hindbrain) ==> (soma and part_of some midbrain) DF (soma and part_of some hindbrain)
cc @dosumis

Only an issue for neurons.
On 17 Jun 2015 00:30, "Chris Mungall"<EMAIL_ADDRESS>wrote:

We currently use part_of
has_soma_part (shortcut for has_part some (soma and part_of some X)) is
seemingly more accurate. It os what was used in NIFSTD- see #176
However, this will complicate reasoning a lot, e.g. for GO see
geneontology/termgenie#71
part_of is not necessarily wrong if we change the conceptualization in
the gross AO such that brain region X is considered to extend wherever
processes extend. This would require weakening spatial disjointness axioms
in uberon though. E.g. (part_of some midbrain) DF (part_of some hindbrain)
==> (soma and part_of some midbrain) DF (soma and part_of some hindbrain)

Please no. Nervous systems are just too tangled for this to make a sense.

cc @dosumis
—
Reply to this email directly or view it on GitHub.

Ignore above commit - wrong repository


Some detection boxes can be slightly different between filtered and unfiltered runs

We've noticed some cases where detection boxes can be slightly different between two runs on the same image, where the difference is one of the runs had no filter, while the other one did.

this is expected because of NMS


Fix Readme broken links

While reading our Readme I noticed several links were broken, so decided to fix them.
Also recorded in the Readme the decision to use ERB instead of Slim.

Ammend & Push with no changes to re-trigger Github checks as Github was down and many checks didn't run and were blocking the PR merge.


Updated elyra installation sample check command output to reflect

Updated elyra installation sample check command output to reflect v0.10.2
Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

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

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

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

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

@romeokienzler I think output should be based on whatever is currently being displayed in the master branch and not a release, reason being that devs will the be the ones building elyra and seeing this on github. With that said, the current version numbers in the output are incorrect from the master branch and will need to be updated in the readme. Assistance with that would be very helpful!


remove v2 support for hosts from logical_dns_cluster.cc

Signed-off-by: Abhay Narayan Katare<EMAIL_ADDRESS>Commit Message: remove v2 support of hosts from logical_dns_cluster
Additional Description: PR of type remove_v2_support. first PR is #16274
Risk Level:LOW
Testing: Unit
Docs Changes: NA
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]
[Optional API Considerations:]

This seems to be an empty PR(i.e. no file changes)?

@tyxia  This is my bad :( . i worked on PR without fetching latest code from upstream and that's why while fixing build error it all reverted back and sync with latest codebase so empty.

closing as already done !!!

@tyxia This is my bad :( . i worked on PR without fetching latest code from upstream and that's why while fixing build error it all reverted back and sync with latest codebase so empty.

No worries at all. Thanks for working on this!


Should we accept invalid color() syntax?

Right now every color space we support can be parsed and serialized as color() in addition to any other formats it may support.
This obviously means that colors that are invalid in CSS are parsed and produced by toString().
However, we do need a serialization for every color, and something CSS-like seems like the most reasonable option. But if we agree that toString() can produce these invalid colors, then surely we should be able to parse them too so they roundtrip.
Options:
A: We keep the current behavior and every color space also corresponds to a color() syntax, whether that is valid in CSS or not
B: color() only exists for color spaces for which it's valid CSS OR color spaces that have no other corresponding format. This means that color(lab L a b) won't be valid anymore (since there is the lab() syntax) but color(display-p3 r g b) will be, and color(acescc r g b) will also be valid
C: color() only exists for color spaces for which it's valid CSS and color spaces that do not have any CSS representation just get an alternative representation (perhaps color() with a <dashed-ident>?)

Lets explore color() with a <dashed-ident>


Uncaught SyntaxError: Unexpected token u in JSON at position 0

I was looking into using storybook or carte-blanche to create a UI explorer for react-native-web. I followed the README instructions and added this to my webpack config:
new CarteBlanche({
  componentRoot: path.join(__dirname, '../src/components'),
  filter: /index.js$/
}),

But navigating to any example component produces this error:
Uncaught SyntaxError: Unexpected token u in JSON at position 0

Holy cow that's awesome! Do you have a repro somewhere so I can take a look at this specific bug?
(We don't have support for a non-editable mode at the moment, but if you give me a day I'll get that implemented!)

Oh, having the examples be editable is fine. It would be something used during development as much as for external consumption.
To repro:

git clone react-native-web
npm install carte-blanche
Add that code block to examples/webpack.config.js
npm run examples

Will take a look tomorrow!

Also encountered this one. I made a workaround by fixing https://github.com/carteb/carte-blanche/blob/0cedc40b10b788508a255dc9d854c517c68ce24f/plugins/react/frontend/index.js#L24 with this:
basePath={JSON.parse(pluginData && pluginData.basePath || '{}')}

But the the root cause is probably deeper than that.

Just tried, I even get an earlier error … need to take a closer look at another time.

@LeZuse do you have an example repo?

@nikgraf I will try to make an isolated repro and will get back to you.

@nikgraf I'm getting the same error - Seem to fail while parsing the Component data:
It's calling http://localhost:8082/variations/src/components/Footer/Footer.js, which returns:
{"data":{}}


Fix: Unmount react if result bubble is destroyed

I'm not 100% sure if this is really necessary.
But if it is this fixes a memory leak since it unmounts React if the result bubble isn't needed anymore.

Oh didn't realize this, makes sense.


[iPad Mini 4] unable to connnect to device

Trying to run on macOS 12.4 Monterey. The ramdisk gets created successfully but after running sshrd.sh boot, only two progress bars complete before ERROR: Unable to connect to device occurs
At this point, the device is in recovery (screen on, but no image) as reported by irecovery -q

i've discovered the problem: The irecovery command for iBSS is being sent far too quickly, which is why irecovery is unable to connect. sleeping for 10 seconds seems to be enough

Trying to run on macOS 12.4 Monterey. The ramdisk gets created successfully but after running sshrd.sh boot, only two progress bars complete before ERROR: Unable to connect to device occurs
At this point, the device is in recovery (screen on, but no image) as reported by irecovery -q

can you solve it?

https://github.com/verygenericname/SSHRD_Script/blob/22552d5d6b0626e787fa6806c2776316204c7ac3/sshrd.sh#L151
I had the same issue on my iPad Air 2.  Increasing the sleep time after "$oscheck"/irecovery -f sshramdisk/iBEC.img4 to 10 seconds fixed it. Thanks @joshuah345!


Keeping snapshots without a tag

I'd like to keep some old snapshots that have no tag. Would it be possible to allow the "forget" command to exclude snapshots, rather than just tags? Thanks.

What if you just add a tag to that old snapshot? And if that's not possible, having a feature to change tags might be a good solution :) That you could have a tag like keep-forever

@Niondir, I hinted at that on IRC, but @fd0 seemed to prefer excluding snapshots directly.

I'm not against adding tags to snapshots per se, but it will require some thought on how to design the user interface. The snapshot IDs will also change, which shouldn't be a problem.
The easiest solution here is to implement keeping specified snapshot IDs, that's very little code, so it's the obvious solution.

We've just merged #855 which adds the tag command, it can be used to add tags to snapshots :)

I suggest we close this issue. One can easily add and edit tags on snapshots, including old ones like @teknico had a use case to keep. I also think the forget command is fine as it is - it can work with policies and indirectly also tags, there's no need for it to also be able to identify snapshots.

I agree, please feel free to add further comments. Thanks!


Zipper Service Error handling Task

Describe the bug in current situation
Its being observed by Dev Team( @sumathi-thirumani-aot , @divyav-aot  .... )  that Zipper Service on TEST Marshal has all of a sudden started to restart and gone crashloopback error on OCP. Upon analysis, its informed that it can be related to the exceptions thrown from the services inside.
Purpose of this task is to analysis the code and handle error correctly with DB status change. Also, to evict the corresponding REDIS message from the REDIS STREAM.
Link bug to the User Story
Impact of this bug
Describe the impact, i.e. what the impact is, and number of users impacted.
Chance of Occurring (high/medium/low/very low)
Pre Conditions: which Env, any pre-requesites or assumptions to execute steps?
Steps to Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Actual/ observed behaviour/ results
Expected behaviour
A clear and concise description of what you expected to happen. Use the gherking language.
Screenshots/ Visual Reference/ Source
If applicable, add screenshots to help explain your problem. You an use screengrab.

As per @divyav-aot  , this specific request still giving issue, https://test-marshal-foirequest.apps.silver.devops.gov.bc.ca/foi/foirequests/558/ministryrequest/558

As per @divyav-aot  , this specific request still giving issue, https://test-marshal-foirequest.apps.silver.devops.gov.bc.ca/foi/foirequests/558/ministryrequest/558

Need to check Scenario#4 of #3301 as well!

The ZipperService restart issue is related with the resources on POD while its processing files more than the assigned resources limit
Private Zenhub Image
This was the previous settings, and ZipperService was having near to  500MB in memory. Now I made like this.
Private Zenhub Image
so, @divyav-aot , @sumathi-thirumani-aot - so the restart of the PODs while doing Harms stiching is unrelated to the error handling code written, rather its with POD running out of resources - happy to demo that

Closing as per discussions on the stand up


refactor(router-view): render children as placeholder

This is not a bug, but the way I use router-view is that it has a placeholder using the router-view children before rendering it with the actual view from the component. Here's a little demo:
https://codesandbox.io/s/vue-routing-example-b1t5d
You see that there's a slight delay before the route component gets rendered. It gets quite apparent when you have a beforeEach navigation guard that delays the route to be rendered. The 'blinking' effect between the blank page and the rendered component is undesirable and I am trying to improve it.
I tried using async component to no avail, and it turned out that the cause was when the router is initialized, it is validating an initial route, and it is rendering an empty node since there is no match. This explains the blank page/element that I was facing.
My proposal is to render the children instead of an empty node, so that there is something to be rendered before the route component takes place. This applies to any kinds of route mismatches though. I made a little example and an e2e test to demonstrate the change.
Also, I did search through the issues but none of it seemed to mention this problem (could be very specific to the problem I'm facing, or maybe I missed it, CMIIW), so if this isn't exactly what Vue Router is aiming for, I understand, but maybe you could suggest a solution for me 😅. But if this is good enough, that would be so great, though I'm not sure if I'm doing the e2e test right.
Anyhow, let me know! Thanks for Vue Router btw, I've been using it for the past 2 years and it's been terrific.

Hey, thanks for this, it's a very detailed and understandable issue, I think it's a good idea and a good opportunity to think about the API of router-view to maybe also handle 404 routes

@posva I agree, right now the 404 cases are pretty much handled by backend rendering. Should the changes for the error pages be done in this PR as well? Or is it something to think about later on.

@posva Sorry if I bumped this PR again 😅 Just in case I wasn't clear. Is there anything else I needed to do in this PR so that it can be reviewed? Thanks.

No, nothing to do. I will get into this when I can but it will probably go through an RFC first

Understood, thanks @posva

Hello @posva, sorry for bumping this PR again after two months. Any updates on the RFC, or maybe I can help with it, so that this PR can get in? Thank you.

Hey, no updates yet. You could, if you have the time, prepare an RFC at https://github.com/vuejs/rfcs instead of a PR
Unfortunately there are quite a few other things I need to cover until I get to this

Thank you for the PR. I'm closing it for the moment as we need to wait for https://github.com/vuejs/rfcs/pull/80 and https://github.com/vuejs/rfcs/pull/160
I will reopen if we go forward with the change!


plan and prepare the software presentation

We have to prepare a software presentation for our project.
Summary
According to the course guidelines, we have to hold a presentation of our software.
It has to include a presentation of the software itself, as well a walkthrough and description of our code and our project management.
The presentation has to be 45 minutes long.
Acceptance Criteria
Which criteria has to be reached to be accepted

[x] All needed information are part of the presentation
[x] The presentation time is equally divided between all members.

Tasks
Which tasks are included to add this feature

[x] Plan the presentation
[x] Prepare the slides
[x] understand the code, to be able to explain it to others.

Estimates
Estimated effort for completion: 5-10h
Additional Information
This issue can be split between different members, but everyone has to be able to explain the codebase (at least the rust part)

The presentation was created, the parts were divided between the group members and relevant or incomprehensible code parts were discussed.


[feat][draft PR] integrate crawl

Description
Describe your changes in detail.
Motivation and Context
Why is this change required? What problem does it solve?
close #758

[ ] I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds core functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (update in the documentation)
[ ] Example (update in the folder of example)

Implemented Tasks

[ ] Subtask 1
[ ] Subtask 2
[ ] Subtask 3

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide. (required)
[ ] My change requires a change to the documentation.
[ ] I have updated the tests accordingly. (required for a bug fix or a new feature)
[ ] I have updated the documentation accordingly.

Hey @LysanderT , Thank you for your Firecrawl PR! Could we arrange a time to chat? This issue involves official collaboration with Firecrawl, and we hope to complete and promote it within this week so I took it on to ensure progress and didn't notice your comment on the issue, which led to a duplicate PR. My apologies for this oversight. Let's schedule a time to exchange our development ideas for the same issue. Afterwards, we can submit a supplementary PR from your side that provides a more refined version based on our discussion, does this sounds good to you? Thank you again for the contribution!

@Wendong-Fan
Sure! I’m temporarily free for the rest of the week. How about tomorrow night or any other time you’re available? Let me know soon so we can schedule something before I get any new commitments.

@Wendong-Fan
Sure! I’m temporarily free for the rest of the week. How about tomorrow (Aug 2nd pacific time) night or any other time you’re available? Let me know soon so we can schedule something before I get any new commitments.

Hey @LysanderT , yeah it works for me, you can also reach out to me directly when you are free via slack !


DBeaver 6.1.5+ not loading extra data-sources-*.json configuration files

System information:

Operating system: Ubuntu 18.04
DBeaver version: 6.2.0
Additional extensions: None

Connection specification:

Database name and version: postgres 9.5 & 10 ( probably not relevant )

Describe the problem you're observing:
Dbeaver documentation describes the possibility to define several connection data sources, by having multiple files named according to the pattern data-sources-*.json. ( https://github.com/dbeaver/dbeaver/wiki/Admin-Manage-Connections )
I have used this functionality with the xml -style configuration to generate additional configuration files with connection config for various servers. I could name these extra files according to the data-sources-*.xml pattern and dbeaver would merge all configuration.
It appears this is not working with the new json-format. Adding a data-sources-2.json file in /home/$user/.local/share/DBeaverData/workspace6/General/.dbeaver/ has no effect, its configuration is not loaded by DBeaver. Overwriting data-sources.json with the contents of data-sources-2.json does make the configuration appear, at the loss of the manually defined connections.
I have tested both DBeaver 6.1.5 and 6.2 with the same result.
Steps to reproduce, if exist:
Create a data-sources-2.json file in /home/$user/.local/share/DBeaverData/workspace6/General/.dbeaver/ with the contents below and restart DBeaver:
{
  "folders": {},
  "connections": {
    "postgres-jdbc-16d15bc75ef-1016ec509473e93a": {
      "provider": "postgresql",
      "driver": "postgres-jdbc",
      "name": "PostgreSQL - postgres 2",
      "save-password": true,
      "read-only": false,
      "configuration": {
        "host": "localhost",
        "port": "5432",
        "database": "postgres",
        "url": "jdbc:postgresql://localhost:5432/postgres",
        "type": "dev",
        "provider-properties": {
          "@dbeaver-show-non-default-db@": "false",
          "@dbeaver-show-template-db@": "false"
        },
        "handlers": {}
      }
    }
  }
}

Expected result: A connection named "PostgreSQL - postgres 2" should appear.
Actual result: No new connection is listed.
Include any warning/errors/backtraces from the logs
No errors are logged as far as I can see, neither in dbeaver-debug.log or in stdout when launching dbeaver from terminal.

Yes. DBeaver doesn't refresh changed resources during startup. Thanks for the bug report.
Workaround: refresh project to see config changes (select your project in "Projects" view and press F5).

@serge-rider Thanks, your workaround did the trick!

verified

I'm sorry to comment on this old issue, but I'm still facing the same problem.
Pressing F5 solved it, BUT had I not searched the Internet for a long time untill I found this GitHub issue, I would have had no idea of how to solve it. And this will surely happen to other users.
So DBeaver is still not refreshing the project on startup from the json config files.
In my case, I copied the config. files from a Time Machine backup, on a Mac, and DBeaver would not show the connections and bookmarks.


Add missing dependencies.

Refer to this link for build results (access rights to CI server needed):
http://jenkins.guh.guru/job/guh-webinterface-pull-request/77/


Streaming: TPC-H Q12

create materialized view tpch_q12 as
select
    l_shipmode,
    sum(case
        when o_orderpriority = '1-URGENT'
            or o_orderpriority = '2-HIGH'
            then 1
        else 0
    end) as high_line_count,
    sum(case
        when o_orderpriority <> '1-URGENT'
            and o_orderpriority <> '2-HIGH'
            then 1
        else 0
    end) as low_line_count
from
    orders,
    lineitem
where
    o_orderkey = l_orderkey
    and l_shipmode in ('FOB', 'SHIP')
    and l_commitdate < l_receiptdate
    and l_shipdate < l_commitdate
    and l_receiptdate >= date '1994-01-01'
    and l_receiptdate < date '1994-01-01' + interval '1' year
group by
    l_shipmode
order by
    l_shipmode;

Feature is not yet implemented: unsupported expression InList { expr: Identifier(Ident { value: "l_shipmode"...

IN is not implemented..


markdown list will not be rendered in the exported picture.

The result of rendering now

Expected rendering results

Could you check the version number of the installed plugin? I should have fixed this issue in version 2.3.7 today.


Add option to delete draft releases + README fix

Add option to also delete draft releases
If delete_draft_release is set to true, the action will also remove draft releases. This only applies if delete_release is set to true as well.
A somewhat related fix: Fix delete_release's wrong default value in README (delete_release is true by default, not false).
I can propose the second commit separately if you don't agree with the option to remove draft releases.

@ppd This seems useful for both.  Thanks!

Reverting this merge.
@ppd This caused a regression because of the flawed logic, see issue #13.
In GitHub, Draft releases do not have a tag.  But prereleases can have a tag.  See my test examples:

This GitHub Action in this repo however requires that a tag_name is always supplied otherwise the action will fail quickly.
Thus, draft releases cannot be a valid filter candidate for this action, I would say.  You can certainly use another GitHub Action from the Marketplace or just create your own, then add the action as a 2nd job or step in your workflow file to additionally remove draft releases.


Re-order the articles

Hello, I am a PR summary agent on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!


Need delay for using getPixelFromCoordinate

Hi, I'm newbie at OL3.
I was trying to use this function just after the map is initialized.
But, I could not due to frameState == null.
maybe the function is for inner logic, or for something else, so it cause this kind of situation when user access the function directly.
Actually, get pixel from coordination is kind of math. So it shouldn't be waiting until the map really rendered on the screen. for only calculation!
so, I just overrided the function and it may be helpful for someone like me. and you team can refer this.
ol.Map.prototype.getPixelFromCoordinate = function(coordinate, resolution, rotation) {
  var frameState = this.frameState_;
  var coords = coordinate.slice(0, 2);

  var coordinateToPixelMatrix = [];

  if (frameState) {
    coordinateToPixelMatrix = frameState.coordinateToPixelMatrix;
  } else {
    coordinateToPixelMatrix = ol.vec.Mat4.makeTransform2D(
        goog.vec.Mat4.createNumber(),
        this.viewport_.clientWidth / 2, this.viewport_.clientHeight / 2,
        1 / resolution, -1 / resolution,
        -rotation,
        -coords[0], -coords[1])
  }

  return ol.vec.Mat4.multVec2(coordinateToPixelMatrix, coords, coords);
};

I'd be careful with this. You might get wrong results, e.g. when the map does not have the final layout yet. It is better to wait with the first coordinate to pixel conversion until the map is rendered. You do not need a timeout for this, we have the 'postrender' event on ol.Map. So in your initialisation code, you could do something like this:
map.once('postrender', function() {
  // safe to call map.getPixelFromCoordinate from now on
});

Thank you, that works great!
But, how can I use it in specific function?
I mean how can I use this function as one of API's list?
i.e.)
this.map = map;
// ... (omit) ...
myfunction = function() {
   // need map.getPixelFromCoordinate
   // this.map.once("postrender", function()) is not possible
}

of course, if I cover all by map.once("postrender", function()), it's fine.
however, in the situation when we can't cover, it is not very helpful.

What about something like
getPixelFromCoordinateAsync = function(coordinate, callback) {
  var pixel = map.getPixelFromCoordinate(coordinate);
  if (pixel) {
    window.setTimeout(function() { callback(pixel); }, 0);
  } else {
    map.on('postrender', function() {
      getPixelFromCoordinateAsync(coordinate, callback);
    });
  }
}

Calling getPixelFromCoordinate works when you call it in the 'postrender' event, but it's not working if I call it in the 'pointermove' event, and I'd expect that by the time I've moved my cursor the frameState_ will have been populated, but it seems not. I'm guessing it's some kind of JavaScript rule that I'm missing. I tried registering the 'pointermove' event within 'postrender' success callback, but that doesn't work either. Any idea how to combine the use of 'postrender' with 'pointermove'? Thanks!

That should work fine:
map.once('postrender', function() {
  map.on('pointermove', function(e) {
    var pixel = e.pixel;
    var coordinate = e.coordinate;
  });
});

Note that you don't need to use getPixelFromCoordinate, because the pointermove´ event has both pixelandcoordinate` properties.

I have a question similar to this that may not warrant opening another issue. This seems like a good place to ask, though I would be happy to take elsewhere if preferable.
Is there any sort of 'delay' or 'pause' option on the pointermove event?
OL2 had a few documented options to delay interactions on hover events like so: http://dev.openlayers.org/examples/hover-handler.html
I've been looking for examples and documentation on how to do the same thing in OL3, and coming up short.


Finetuning Chronos on ETTh datasets yields poor performance

Describe the bug
When finetuning chronos-t5-small on the ETTh1 dataset and ETTh2 dataset respectively, the performance drops compared to the  zeroshot performance. Could that be the case because the prediction_length is recommended to be <=64?
Expected behavior
If the model chronos-t5-small is finetuned on let's say the dataset ETTh1 only, the finetuned model should yield superior MAE and MSE performance compared to the zeroshot model.
How to reproduce
This example is focused on the ETTh1 dataset. For the ETTh2 dataset, the procedure is identical. Please note that the finetuning evaluation for my experiments is done individually for both datasets, so the model is not finetuned and evaluated on both datasets at once.

Standardize ETTh dataset and convert it into arrow format

def convert_to_arrow(
    path: Union[str, Path],
    time_series: Union[List[np.ndarray], np.ndarray],
    compression: str = "lz4",
):
    """
    Store a given set of series into Arrow format at the specified path.

    Input data can be either a list of 1D numpy arrays, or a single 2D
    numpy array of shape (num_series, time_length).
    """
    assert isinstance(time_series, list) or (
        isinstance(time_series, np.ndarray) and
        time_series.ndim == 2
    )

    # Set an arbitrary start time
    start = np.datetime64("2016-07-01 00:00:00", "s")

    dataset = [
        {"start": start, "target": ts} for ts in time_series
    ]

    ArrowWriter(compression=compression).write_to_file(
        dataset,
        path=path,
    )

if name == "main":
# Load and preprocess the dataset
df = pd.read_csv('/path/to/dataset')
df=df[0:12194]

# Ensure time column is in datetime format
time_column = 'date'
df[time_column] = pd.to_datetime(df[time_column])

# Define feature columns
feature_columns = ['HUFL', 'HULL', 'MUFL', 'MULL', 'LUFL', 'LULL', 'OT']

# Standardize the feature columns
scaler = StandardScaler()
df[feature_columns] = scaler.fit_transform(df[feature_columns])
df['id'] = 0

# Create the structured DataFrame
structured_df = df[['id', time_column] + feature_columns].rename(columns={time_column: 'timestamp'})

# Extract the time series and start times
time_series = [structured_df[col].to_numpy() for col in feature_columns]
start_times = [np.datetime64(structured_df['timestamp'].iloc[0], 's')] * len(feature_columns)

Finetune the model

Use training pipeline implemented in file chronos-forecasting/scripts/training/train.py shown in the tutorial with the following config chronos-t5-small.yaml:

training_data_paths:
- "path/to/ETTh1_train.arrow"
probability:
- 1.0
context_length: 512
prediction_length: 96
min_past: 60
max_steps: 200_000
save_steps: 20_000
log_steps: 500
per_device_train_batch_size: 16
learning_rate: 0.001
optim: adamw_torch_fused
num_samples: 1
shuffle_buffer_length: 50_000
gradient_accumulation_steps: 1
model_id: google/t5-efficient-small
model_type: seq2seq
random_init: true
tie_embeddings: true
output_dir: ./output/etth1/
tf32: true
torch_compile: false
tokenizer_class: "MeanScaleUniformBins"
tokenizer_kwargs:
  low_limit: -15.0
  high_limit: 15.0
n_tokens: 4096
lr_scheduler_type: linear
warmup_ratio: 0.0
dataloader_num_workers: 1
max_missing_prop: 0.9
use_eos_token: true

Evaluate finetuned model on the final checkpoint with the evaluation pipeline implemented in chronos-forecasting/scripts/evaluation/evaluate.py with the following modifications in the load_and_split_dataset() function:

def load_and_split_dataset(backtest_config: dict):
    hf_repo = backtest_config["hf_repo"]
    dataset_name = backtest_config["name"]
    offset = backtest_config["offset"]
    prediction_length = backtest_config["prediction_length"]
    num_rolls = backtest_config["num_rolls"]

    ds=Dataset.from_file("/path/to/ETTh1.arrow")

    ds.set_format("numpy")

    gts_dataset = to_gluonts_univariate(ds)

    # Split dataset for evaluation
    _, test_template = split(gts_dataset, offset=offset)
    test_data = test_template.generate_instances(prediction_length, windows=num_rolls, distance=1)

    return test_data

and following metrics:
metrics = (
            evaluate_forecasts(
                sample_forecasts,
                test_data=test_data,
                metrics=[
                    MAE(),
                    MSE(),
                ],
                batch_size=5000,
            )
            .reset_index(drop=True)
            .to_dict(orient="records")
        )

The evaluation is performed on the test section of the standardized ETTh1 dataset, hence the offset. For the evaluation pipeline, use the following config:
- name: ETTh
  hf_repo: autogluon/chronos_datasets_extra
  offset: -1742
  prediction_length: 96
  num_rolls: 1135

Compare the evaluation of the finetuned model with the default model chronos-t5-small (which has not been trained on the ETTh1 dataset).

I get the following results:
Zeroshot ETTh1
dataset,model,MAE[0.5],MSE[mean]
ETTh,amazon/chronos-t5-small_,0.5081954018184918,0.560689815315581_
Zeroshot ETTh2
dataset,model,MAE[0.5],MSE[mean]
ETTh,amazon/chronos-t5-small,0.2625630043626757,0.1391419442914831
Finetuned ETTh1
dataset,model,MAE[0.5],MSE[mean]
ETTh,/path/to/checkpoint-final,0.7746078180721628,1.1865953634689008
Finetuned ETTh2
dataset,model,MAE[0.5],MSE[mean]
ETTh,/path/to/checkpoint-final,0.35415831866543424,0.2516080298962922
As you can see, MAE and MSE are worse for the finetuned checkpoint than for the default model. That shouldn't be the case.
Environment description
Operating system: Ubuntu 22.04.4 LTS
Python version: 3.10.14
CUDA version: 12.4
PyTorch version: 2.4.0
HuggingFace transformers version: 4.44.2
HuggingFace accelerate version: 0.33.0

Thank you opening this, although this is not exactly a bug. When it comes to fine-tuning there is no one-fits-all set of hyperparameters that would work for all datasets. Therefore, it is completely possible that due to specific settings such as a large learning_rate or max_steps, the model's performance worsens upon fine-tuning (e.g., due to over-fitting). I would encourage you to try different fine-tuning hyperparameters.

Thanks, drastically reducing the initial learning rate solves the problem (the finetune performance is better than the zeroshot performance).

@aleksmaksimovic
Thanks for sharing your experience and valuable code. I'm new in forecasting task and following your code to practice tuning model with my own dataset. Doing so, I've got questions about your code.
When you loaded dataset as ds=Dataset.from_file("/path/to/ETTh1.arrow") in load_and_split_dataset(backtest_config: dict) function, is "/path/to/ETTh1.arrow" same as "path/to/ETTh1_train.arrow" that you made from convert_to_arrow function for train or just whole ETTh dataset?
And for eval, isn't it ok just loading datasets like ds = datasets.load_dataset("autogluon/chronos_datasets_extra", "ETTh", split="train", trust_remote_code=True) ? Is it necessary to make test_data from ETTh.arrow?
Also, what are the insights behind the numbers like df[0:12194], offset: -1742 and num_rolls: 1135 ?
Sorry for asking basic questions and thanks in advance for your response.

@deok0726 thanks for your comment!

When you loaded dataset as ds=Dataset.from_file("/path/to/ETTh1.arrow") in load_and_split_dataset(backtest_config: dict) function, is "/path/to/ETTh1.arrow" same as "path/to/ETTh1_train.arrow" that you made from convert_to_arrow function for train or just whole ETTh dataset?

No, ETTh1.arrow is not the same as ETTh1_train.arrow. I created a seperate arrow file for training and evaluation/testing with the convert_to_arrow()  function, so that I have more control over what parts of the dataset the training pipeline uses, and furthermore, control the offset for the evaluation pipeline on the test data. Note that I standardized the ETTh1 datasets using scikit-learn's StandardScaler() before converting them to an arrow file.

And for eval, isn't it ok just loading datasets like ds = datasets.load_dataset("autogluon/chronos_datasets_extra", "ETTh", split="train", trust_remote_code=True) ? Is it necessary to make test_data from ETTh.arrow?

As mentioned above, for me it was necessary, as I wanted to evalute the model's performance on the standardized data, not the original scale. So in your case, if you do not want to standardize, it should be completely fine to do it that way.

Also, what are the insights behind the numbers like df[0:12194], offset: -1742 and num_rolls: 1135 ?

I set this offset to ensure that only the last 1,742 points of the ETTh dataset, corresponding to 10% of the entire dataset, are used for model evaluation. In time series forecasting, it is standard practice to assess a model's forecasting performance using a sliding window approach applied to the test set. To utilize the whole test set with a sliding window appraoch, I calculated precisely 1,135 sliding windows with a stride of 1 to perform the evaluation.
Hope this helps!

@aleksmaksimovic
Thank you so much! It helps a lot for me to understand. Hope you have a great day :)


added stdin.end() to fix Windows sync mode bug

Please see https://github.com/futomi/node-wav-player/issues/1

Thanks!


broken link fix to developers guide

Changed this link to the right page. I am a but unsure about the new link containing the translation code in the path though...

Thanks for fixing!

@rduivenvoorde is there no need for a :ref:-link to have it properly translated?

done in 470a862


EDU-305 Create revisions control panel

Closes https://educandu.atlassian.net/browse/EDU-305

Looks and works super nice :heart_eyes:


Compute patch stats only on java files.

Currently all types of file are accepted when computing patch stats. I'm going to change that for Bears: I will accept only java files. I would like to know if you want that too for Repair, so I would know if I need to check the launcher mode in the code or not.

No need to check the mode here: it can be useful for repairnator too.


Remove tekton-provenance format

This was deprecated in v0.6 and will now be removed in v0.9!
closes https://github.com/tektoncd/chains/issues/293
ref https://github.com/tektoncd/chains/issues/293

/test pull-tekton-chains-go-coverage

/test pull-tekton-chains-unit-tests

/lgtm

/approve


[SPARK-50370][SQL] Codegen Support for json_tuple - simplified version

What changes were proposed in this pull request?
The pr aims to add Codegen Support for JsonTuple(json_tuple).
Why are the changes needed?

improve codegen coverage.

Does this PR introduce any user-facing change?
No.
How was this patch tested?

Pass GA & Existed UT (eg: JsonFunctionsSuite#*json_tuple*, JsonExpressionsSuite#*json_tuple*)
Updated existed UT.

Was this patch authored or co-authored using generative AI tooling?
No.

This is a simplified version made according to the suggestions of the review.
The first version is here: https://github.com/apache/spark/pull/48908
cc @cloud-fan


'font-size' in atom-workspace

Prerequisites

[X] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
There are no option to set the font-size for atom-workspace (everything outside of atom-text-editor) unless you use a theme that supports those changes (like Atom Material UI or One Dark UI ). Setting 'font-size' in atom-workspace does not change anything while setting 'font-family' changes it for most themes.
The current workaround taken from the forum is to do the following each time you change a theme and see if it works with that theme.
.theme-atom-material {
    font-size: 20px;
}

Felt like the interaction is pretty confusing at this point.
Steps to Reproduce

Open styles.less
Set 'font-size' for atom-workspace

atom-workspace {
    font-size: 15px;
}

Save styles.less
Change the 'font-size' value

atom-workspace {
    font-size: 20px;
}

Save styles.less

Expected behavior: The workspace font size changes according to the value set.
Actual behavior: Nothing happens
Reproduces how often: Everytime
Versions

Atom    : 1.17.0
Electron: 1.3.15
Chrome  : 52.0.2743.82
Node    : 6.5.0

OS info:

Operating System : Linux Mint 18.11 Cinnamon 64-bit
Cinnamon Version : 3.2.7
Linux Kernel : 4.4.0-57-generic

Additional Information

Currently there isn't an easy way to change the font size outside of atom-text-editor. Some options:

Change to em units everywhere. Probably not gonna happen until a next major version.
Make it possible to override ui-variables.less. See https://github.com/atom/atom/issues/5903

Until then individual elements need to be overridden in your style.less file. Here two related issues:
https://github.com/atom/atom/issues/3636
https://github.com/atom/atom/issues/2530


Form Label and Form Description are not rendered

Describe the bug
When creating a form like in the docs, Using Form.label and Form.Description does not render them on the form. Everything else works fine.
Also when passing form to Form.Field it complains that children prop does not exist. This may have to do something with it but the code runs normally, it might just be a type issue.
Reproduction
Can't reproduce with the repro as it fails when installing dependencies. I think it may have something to do with the registry.
Also when installing the form component with the add command, in many cases the cli just hangs forever in the installing dependencies step. Not sure if this is related to the issue.
This is for the NEXT version.

type error description (can't screenshot)
Object literal may only specify known properties, and 'children' does not exist in type 'FieldProps<{ name?: string; email?: string; phone?: string; }, "phone"> & Omit<WithElementRef<HTMLAttributes>, "children">'.ts(2353)
Logs
No response
System Info
This command hangs as well

Severity
annoyance

The issue is that stackblitz filters out requests that are attempting to leave like that via the CLI (IIRC). Form.Field requires you to have either children passed as a prop or actual children content. If you can link a github repo I'll take a look.

Same issue here:

New Project

Project Name

This is your project name.

Description

Optional project description.

Create

Does someone have fix this issue yet
I have the same on 2 auth pages

Does someone have fix this issue yet
I have the same on 2 auth pages

Yes, I just opened new issue Huntabyte replied with fix and closed ticket, just search for this issue again (among closed yesterday).
Ps. My reply is from phone can't paste link

Does someone have fix this issue yet
I have the same on 2 auth pages

Yes, I just opened new issue Huntabyte replied with fix and closed ticket
here

Thanks man


Fix search test causing issues with failures in CI.

Description
Use the refresh() method, instead of a fixed wait, to reduce CI failures.
Motivation and Context
We are seeing a number of random CI failures for the test that was updated. This is likely a timing issue, with making sure the elastic search index is up to date before doing the query.
How Has This Been Tested?
Ran tests locally.
Checklist

[x] I have updated the documentation accordingly.
[x] All new and existing tests passed.

Notion here: https://www.notion.so/lyrasis/Test-failing-f6b8d77e8d834e8dbe67110e3de5e007

I removed refresh_and_wait() and replaced to call to it with the API refresh() method, so we don't have two ways of accomplishing this. @io7m I'd like to get your feedback before merging this, do you see any reason not to make the changes in https://github.com/ThePalaceProject/circulation/pull/727/commits/7381746cabb52073bf80112b49d43d84037dfeac?

This looks good to me!


Unoffical merge: CQUI expansion1 + City Status fix+ Tech fix + diplomacy joint war fix

I combined following CQUI fixes for my own use (R&F rules v<IP_ADDRESS>7). You can download it here: https://www.upload.ee/files/8700470/07.13.2018_R_F_CQUI_expansion1___City_Status_fix__Tech_fix___diplomacy_joint_war_fix.7z.html
Let me know if something is missing or outdated.
Sources:

Tech tree and world overview to default UI: https://github.com/Azurency/CQUI_Community-Edition/issues/329#issuecomment-403253007

City Status fix: https://github.com/Azurency/CQUI_Community-Edition/issues/283#issuecomment-404058651

Diplomacy view / joint war fix: https://github.com/Azurency/CQUI_Community-Edition/issues/283#issuecomment-404364480

Hello! How can i install this fix? Thanks!

Removed the outdated link. official version is now master, available here: https://github.com/Azurency/CQUI_Community-Edition


Shards lags when using large images in UI.

@ShahFragcolor commented on Fri Dec 09 2022
https://images.zenhubusercontent.com/460320683/22915413-bb2e-4dcc-8053-c95d27afff80/mainwindow_2022_12_06_09_35_54.mp4

When using a large image in UI.Area the whole game  lags. Image is about (1920 x 1080)

https://images.zenhubusercontent.com/460320683/5943d89a-a782-4729-bc1a-128be3a4bff3/mainwindow_2022_12_06_09_50_24.mp4

when using a smaller image, it does not lag

https://user-images.githubusercontent.com/99865253/206677510-ce8f4f36-3b68-4f7d-9549-cf1ba9c65f49.mp4
currently as a whole my game seems to lag quite a bit, but it might be because in general i am still using images that are  too large and scaling them down

I suspect maybe the image is being loaded every frame, will check.

I suspect maybe the image is being loaded every frame, will check.

Ouch let's fix that, either suggest better code to shah or fix the bug 🐜 asap as we want to publish the tutorial soon.

Hey team! Please add your planning poker estimate with Zenhub @Kryptos-FR @sinkingsugar @tdbe

Seems like it indeed is. Replacing the LoadImage with usage of
(defshards LoadTexture [name]
  (LoadImage name)
  (GFX.Texture)
  )

seems like enough.

Maybe we should change UI.Image behavior with images to have some global cache or not accept images, since it's easy to make this mistake and cause the texture to be recreated every frame

we need to review the tutorial to catch those issues!  cc @ShahFragcolor
@guusw I don't think so much the snipped you posted is very legit and people should learn that ideally, cos wires are stateful and indeed can cache things.


Footnotes from different posts have same ids

Hello, using Ghost version 0.6.2
If I have two posts using footnotes on the home page for example,  their IDs are always the same, ie., both first footnotes ([^1]: ) of each post will have id #fn:1
So when I click ¹ of the second post on the page it will open the anchor of the first post's footnote and not it's own.

well footnotes work that way in most engines ive seen: they shouldnt appear on the homepage/index as in most cases there is only a short summary of some kind is on the homepage -> nor the footer nor the footnotes are supposed to be visible there..
what do you think the proper solution would be?

Maybe prefixing it with post uri or any unique post id like #fn-post-uri:1

Can't confirm it. All footnotes are replaced with empty strings in the index page.
https://github.com/tryghost/ghost/blob/39dfb2c09a95f04a01300b4216cf2798b160ee2f/core/server/data/meta/excerpt.js#L6-L10
Technical details:

Ghost Version: master (latest commit: 39dfb2c09a95f04a01300b4216cf2798b160ee2f)
Node Version: 0.10.40
Browser: Chrome 48.0.2564.116 (64-bit) on Mac OS X 10.11.3
Database: SQLite

To accomplish putting a post id into the field, i believe we would have to pass the post ID into the ghost showdown fork (erisds/showdown) where it is re-formatting the text. Is this something we want to move forward with?

@dbalders The post ID isn't necessarily guaranteed to exist at all times (e.g. when creating a new post before the first save)

This is only an issue, I believe, if you output full content on the list page instead of the excerpt. Therefore I think it's more a manifestation of users not being happy with the excerpt helper.
It's incredibly difficult to fix, and in my opinion too much of an edgecase to be worth the effort, especially given the changes coming in the new editor.
If anyone has a smart idea for a fix, I'm happy for a PR. Otherwise closing this as a won't fix.


[CH-366]Support full join

What changes were proposed in this pull request?
Support full join and join on condition
How was this patch tested?
test by CH[[366]]

https://github.com/Kyligence/ClickHouse/pull/366


Issue with globbing hidden files?

Expectation:
All files defined in files (incl. hidden) will be placed into the final Mac app that this plugin builds
Actual result:
Hidden files are not copied to the final app
Here is my Gulp usage:
var nw = new NwBuilder({
    version: '0.30.3',
    files: [
      'src/**/*'
    ],
    platforms: ['osx64']
  });

return nw.build();

Everything else works great, just having issues getting hidden files to show up. Does it sound like an issue with the glob pattern I'm using, or related to nw-builder?

@nwittwer In most linux flavors I know globbing does not match hidden files automatically. I also had a quick look in gnu's manuals:

When a pattern is used for filename expansion, the character ‘.’ at the start of a filename or immediately following a slash must be matched explicitly, unless the shell option dotglob is set. When matching a filename, the slash character must always be matched explicitly. In other cases, the ‘.’ character is not treated specially.

(from: https://www.gnu.org/software/bash/manual/html_node/Filename-Expansion.html)
I suspect it's not a desired default behavior to move all hidden files implicitly. I suggest you add a separate expression for hidden files (I think it's src/**/.*)


Support XML files

This would be handy e.g. for JUnit XML files (https://github.com/testmoapp/junitxml)

Closed by #6.


How can I run the app using the URL schemes programmatically?

Is that possible?

iHasApp does not currently support that, but if that is something you want then you should keep track of url schemes as they are detected, and then keep that mapping from urls to app ids.
So it is possible, but not something iHasApp specifically needs or supports

thanks for the quick response :+1:


Refactor file structure

I added constants.py file and move all const variable to this file. Also, I added utils file and move helper functions to this file.  It will be more readable code structure.
Although there is a normalizers.py file, some normalize functions were in validation.py. I also moved these to the normalizer.py file.

@Narsil Hi, I refactored some files to make the code more readable.  Can you review this PR? I look forward to your return :) :)

Hi thanks for the PR.
Sorry, but what kind of problem are you trying to solve ?

Hi, this PR is not solve specific problem directly.
I created a new file named constants.py to house constant variables, which helps to organize and centralize the management of these constants. This change enhances code readability, reduces redundancy, and simplifies maintenance by keeping all constant values in one dedicated location.
Also, I relocated certain normalization functions to the designated "normalize.py" file from their previous scattered locations. This streamlines the codebase by consolidating all normalization-related logic in one cohesive file. This change minimizes confusion, improves maintainability, and ensures that the normalization functions are easily accessible and consistently applied throughout the project.

I added a new file "utils.py" to house helper functions, although I'm open to suggestions for a better file name.
I made these changes to improve code readability and maintainability. By centralizing constants in the "constants.py" file, consolidating normalization functions in "normalize.py," and creating a "utils.py" file for helper functions, I aimed to enhance the overall organization of the codebase. This approach makes it easier for developers to locate and understand specific functionalities, leading to better collaboration and smoother maintenance of the project over time :) :)

Hi I highly appreciate the effort, but I am the one maintaining this, and I tend to not modify code if there's not a specific problem we're trying to address.
If you do want to make contributions, please try to open an issue so we can discuss this earlier. I feel bad refusing most likely good work, but I just don't have the bandwidth to give it enough time for review, and it's not fixing a direct issue.
Although this repo is unlikely to receive any kind of change which is not the direct consequence of adding a feature or fixing a bug.


Forward Application Exceptions for Triage (Email, Logging Service, Slack, GitHub Issue, Etc.)

When a meetup group no longer exists the update_cal_data.py will catch an exception and log it.
I actually have the exception output emailed to me via the cronjob, but we should consider having these sorts of exceptions emailed, sent to a logging platform that sends notices, posted to a Slack channel, or otherwise shared with the people who can review and fix them.
Below is an example of when the Web Code Chicks group stopped using Meetup.com and we found out about it right away via the exception being emailed to me, but it could very well have gone unnoticed in a log.
We already have a tool that visits each organization's event service and homepage (I need to push this code to GitHub).  That makes this particular exception less necessary, but it demonstrates that we should do something more than just log the application's exceptions and errors.
Traceback (most recent call last):

File "update_cal_data.py", line 25, in <module>
  refresh_all_meetings()
File "update_cal_data.py", line 10, in refresh_all_meetings
  meetup_events = app.get_meetup_events(group_lists['Meetup.com'])
File "app.py", line 52, in get_meetup_events
  raise Exception('Could not connect to Meetup API at {}.  Status Code: {}'.format(url, r.status_code))
Exception: Could not connect to Meetup API at https://api.meetup.com/webcodechicks/events?&sign=true&photo-host=public&page=20. Status Code: 410

We have this going to a private HG Slack channel, so closing this issue and we can reopen or reference it as a need arises.


no new notification for varlink and dracutdevs namespaces

context: https://github.com/packit/packit-service/issues/997
I can see: https://sentry.io/organizations/red-hat-0p/issues/2233146066/activity/?environment=prod&project=1767823&referrer=alert_email

The task here is to fix a problem with not receiving a notification (in a form of new issue in the notifications repo) about namespaces that need to be approved and added to the allowlist.


Improving readability

Hello again. As in this PR, it is possible to simplify the tasks/main.yml code a bit.
PS: in our organization we're working on adding some features, such as zabbix templates and user management, which we plan to send soon in successives PR.

Thank you again! 👍  (For this now and the future ones 😉 )


Add instructions to build without PS & Azure CLI

Tool name
Ubuntu
Tool license

Add or update?

[ ] Add
[X] Update

Desired version

Approximate size
No response
Brief description of tool
No response
URL for tool's homepage
No response
Provide a basic test case to validate the tool's functionality.
No response
Platforms where you need the tool

[ ] Azure DevOps
[ ] GitHub Actions

Runner images where you need the tool

[X] Ubuntu 20.04
[X] Ubuntu 22.04
[X] Ubuntu 24.04
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] macOS 15
[ ] macOS 15 Arm64
[ ] Windows Server 2019
[ ] Windows Server 2022

Can this tool be installed during the build?
No response
Tool installation time in runtime

Are you willing to submit a PR?
Not really

Hi @GamePlayer-8 - we'll look into this request and update ASAP. Thank you !

Hi
We understand that these tools are vital for automating the build process and interacting with Azure resources.it  relies extensively on Azure-specific capabilities and services and many services may be  typically controlled via PowerShell and the Azure CLI. Without these tools, it would be difficult.


Instantiate TFA

Adding instances to TFA, mainly so we can define COOKIE_NAME so it differs between TFA on different servers.

At the moment, @EnigmaCurry, this only works if you leave COOKIE_NAME to the default value of "_forward_auth" (and you have to make sure that TRAEFIK_FORWARD_AUTH_SECRET is the same value as it is for the other TFA instances since they're all using the same cookie name - otherwise apps using one TFA instance will authenticate and others will fail).
If you set COOKIE_NAME to something unique, like "_forward_auth_context_instance", you get infinite redirects between app.mydomain.com and auth.app.mydomain.com.


Accessibility Discussion: Order of Items On Status Line

Hi,
Is it possible to count on the positions of items in the status line? Failing that, is it possible to query information that VS Code knows about even if it's not in a fixed position on the status line? I'm asking this because I noticed that in my setup, line and column number information is the next to last item. I have VS Code Extensions that show other information, such as word count and reading level. I would like to set up key strokes that get the individual pieces of information I'm interested in and avoid reading through all the information on the status line to find what I want to know. I'd like to be able to count on always finding line and column number, for instance, or how many spelling errors are in my Markdown file. Now that I think of it, it makes sense to be able to find these things out independent of the status line. I'd like to do it quickly through key strokes, because a quick key stroke allows me to keep the flow of my work going better than stopping, finding something on the status line after F6ing and then finding my way back and reorienting myself to what I was doing.

@jhomme hi! Thanks for creating this issue. I think it is a fair feature request against the status bar to make accessing an exact item possible.
However we currently do not have this on the plan, as for most items there are alternative command palette commands on how to get that information.
For example for line numbers that is Ctrl + G. For problems it is Ctrl + Shit + M and so on.
For now leaving this open as a feature request and we might tackle in the future.


Archivy no longer exists

https://github.com/Uzay-G/archivy
404

fixed by https://github.com/brettkromkamp/awesome-knowledge-management/pull/7


Add ignore packages option

From #59, it seems like the best option is to allow the ability to no-op packages while executing schema extraction.
The config might look like this:
import { SanityCodegenConfig } from 'sanity-codegen';

const config: SanityCodegenConfig = {
  // 👇 this will prevent errors from importing this package during schema extraction
  ignorePackages: ['sanity-plugin-tabs'],
  // ...
};

export default config;

This issue is a todo item for myself.

One issue with this approach is that if you're no-oping a package that's used in generation of a type, you can't then use any functions from that package. eg, with orderable-document-list:
import { orderRankField } from '@sanity/orderable-document-list';

export const projectDoc = {
  // ...
  fields: [
    name,
    orderRankField({ type: 'project' }),
  ],
} as const;

Which then results in the Cannot convert object to primitive value thrown from validatePropertyName because the sanityTypeName is indeed a function, and it can't be called to resolve it because it's no-op 😢


Release Chef 15.5

Targeting 2nd week of November.
Planning to include https://github.com/chef/chef/pull/8922, will need wordsmithing work on the release notes.

This shipped today


Modified layout of the meeting metrics

Summary
Modified the html of the meeting metrics to make them render more neatly aligned.
Reduced check-style problems from 4462 to 4446.
Ticket Link
https://trello.com/c/jgtJ99XD/216-dashboard-modify-layout-of-the-meeting-metrics
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Has UI changes

 Dashboard: Modify layout of the meeting metrics

@iamtomhanks Thanks for fixing the various style issues (as I had requested), nice work, keeping us reducing not increasing the number of errors.
I'd like to make a suggestion for the future, however.
Put the changes for whatever fix/feature you're working on in 1 (or more) commit(s) and then put the changes to address style issues in a subsequent separate commit. That makes it much easier to review the changes for the fix/feature, both immediately for the PR and if one ever looks back at the history.


webostv: Ensure source exists before use

In a case where either (a) an incorrect source name is used, or (b) the
TV isn't currently queryable (e.g. it's off), we get tracebacks because
we assume the source that we are being asked to select exists in
self._source_list.
This makes the lookup code a little more rugged, and adds in a warning
message (in place of the current exception).

An example traceback:
2017-12-02 23:30:19 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/lib/python3.5/asyncio/tasks.py", line 241, in _step
    result = coro.throw(exc)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/core.py", line 1031, in _event_to_service_call
    yield from service_handler.func(service_call)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/media_player/__init__.py", line 408, in async_service_handler
    yield from getattr(player, method['method'])(**params)
  File "/usr/lib/python3.5/asyncio/futures.py", line 380, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.5/asyncio/tasks.py", line 304, in _wakeup
    future.result()
  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/media_player/webostv.py", line 325, in select_source
    if self._source_list.get(source).get('title'):
AttributeError: 'NoneType' object has no attribute 'get'


Add wrapper macros and extend glib::translate

Just putting this out there.
Don't merge yet, I'd like to publish the crates first.

Modified the macro syntax and added object types support. Examples;

glib_wrapper! {
    /// Text buffer iterator
    pub struct TextIter(Boxed<ffi::GtkTextIter>);

    match fn {
        copy => |ptr| ffi::gtk_text_iter_copy(ptr),
        free => |ptr| ffi::gtk_text_iter_free(ptr),
    }
}

glib_wrapper!{
    /// Object representing an input device
    pub struct Device(Object<ffi::GdkDevice>);

    match fn {
        get_type => || ffi::gdk_device_get_type(),
    }
}

Might also add some syntax for Upcast impls.

The code is getting more and more difficult to understand but its usage is improving quite a lot. However, with this approach, we have to "redeclare" all the specialized method, right ?

You had to put these in somehow before as well but it was more boilerplate:
impl types::StaticType for Device {
    fn static_type() -> types::Type { unsafe { from_glib(ffi::gdk_device_get_type()) } }
}

Now the glib crate is taking care of most gory details. It has to be macros because the newtypes must be defined in the crates that implement them.

Expanded the object wrapper macro to support upcasts.

This can be merged now if there are no objections.

There is no such things. Really nice work, thanks !


Allow users to authenticate with Google OAuth

Add google login according to OAuth 2.0 for server-side Web Applications
Step 1: Redirect to Google's OAuth 2.0 server
Step 2: Google prompts user for consent
Step 3: Handle the OAuth 2.0 server response - get code
Step 4: Calling Google APIs - get user info using access_token
I provide my google client_id, which can be used in testing on http://localhost:5173/ :
add these in .dev.vars
GOOGLE_CLIENT_ID=70478082635-iaa28pt6bg1h06ooeic3vo8fgtu90trh.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=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
GOOGLE_REDIRECT_URI=http://localhost:9339/api/login/
GOOGLE_RESPONSE_TYPE=code
GOOGLE_SCOPE=profile email
if need test handleGoogleProdLogin  in local, please directly return handleGoogleProdLogin function for onRequestGet: PagesFunction in file login.ts

resolve #330

@WangGithub0 please click "Resolve" for each of the review comments above that you've fixed, to indicate that they are no longer an issue we need to track/discuss.

I tried logging in with google on Cloudfare deployed url and was a success, but I guess it was a dev login.
I've also gone through the code, and even though I don't fully understand each and everything, I've gained a basic understanding of the flow and how we're managing different auth providers.
As @humphd said, this is a great piece of work! I can understand the pain of implementing Auth since I recently had to do it for the capstone project.
I can't suggest any big changes at this point as lots of improvements have already been made going through the conversations, but I've suggested some minor changes and commented some questions for my clarity.

Yes, it's dev. You can set isDev:false at line58 in login.ts to test product environment
if (provider === "google") {
return handleGoogleLogin({
isDev: true,

@WangGithub0 can you "Squash and merge" this when you have a minute?  I'd love to see this land in 1.3!  Such a cool new feature.

@WangGithub0 can you "Squash and merge" this when you have a minute? I'd love to see this land in 1.3! Such a cool new feature.

Do we have a .dev.ars for product environment? could you add ChatCraft GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET in it?

@WangGithub0 can you "Squash and merge" this when you have a minute? I'd love to see this land in 1.3! Such a cool new feature.

Do we have a .dev.vars for product environment? could you add ChatCraft GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET in it?

I've updated the CloudFlare environment variables for production.