Website Scraper Plugin Only Scanning Homepage

The website scraper plugin is currently only scanning the homepage. Modify the to plugin scrap a single page or subpages based on a flag.
This flag should control whether the crawler scans just the homepage or includes subpages as well, providing more flexibility in how pages are crawled.

Use flag : is_scan_child
'true' : scraper both main page and subpages
'false' : scrap only main page

Hey there! I would love to try to solve this issue.
Maybe i will try to recursively scan the page whenever the flag is true. thank you

Hey @YashBaviskar1 ,
Assigning this issue to you, happy coding
If any assistance required meet our team here : https://join.slack.com/t/theailounge/shared_invite/zt-2ogkrruyf-FPOHuPr5hdqXl34bDWjHjw

@YashBaviskar1  any updates on this?

Hey there Yes, I was looking through the code base , from what i understand i have to change url_reader.py
I was just figuring out a way on how to use  def load(self) in Class UrlReader(DocsReader) to recursively call itself, is this the right approach.
Sorry for the delay

Recursion might work, but it's risky for web scrapers due to infinite loops or stack overflow from nested or circular links.
I would also suggest using a data structure like a queue. Here's how it can work:

Start with the base URL.
Add child URLs to the queue as you process each page.
Ensure that each URL is only visited once (you can use a set to track visited URLs).
Process each URL iteratively from the queue.

Yup thank you! I will try to do what you have said, it is pretty intuitive

Hello there so I tried to make amend on what you had said and this is what i have came up with :

In Class Website I added is_scan_child flag in __init__ and changed the fetch_data accordingly

class Website:
    """
    Website class for interacting with website data.
    """
    def __init__(self, website_url: str, is_scan_child : bool = False):
        self.connection = {}
        self.is_scan_child = is_scan_child #default is False
        self.params = {
            'url': website_url,
        }

    def fetch_data(self):
        base_reader = UrlReader({
            "type": "url",
            "path": [self.params.get('url')],
            "is_scan_child" : self.is_scan_child
        })
        data = base_reader.load()
        return data

Now in Class UrlReader I did as you instructed initialized a url_queue queue and a visited_url set and used find_all to find all the href tags and append in queue if the is_scan_child is true and it iterates through the whole queue and the set keeps track of visited links

class UrlReader:
    def __init__(self, source):
        self.source = source
        self.visited_url = set()

    def load(self):
        out = []
        is_scan_child = self.source.get("is_scan_child", False)
        url_queue = [] #defining a queue to capture sub_urls
        if "path" in self.source:
            urls = self.source["path"]
            for url in urls:
                url_queue.append(url)
            while url_queue :
                url = url_queue.pop(0)
                if url in self.visited_url :
                    continue
                self.visited_url.add(url)
                try:
                    response = requests.get(url)
                    if response.status_code == 200:
                        soup = BeautifulSoup(response.content, 'html.parser')
                        if is_scan_child :
                            for a in soup.find_all('a', href = True) :
                                absolute_url = urljoin(url, a['href'])
                                if absolute_url not in self.visited_url :
                                    url_queue.append(absolute_url)
                            #print(f" Sub Urls are : {url_queue}")
                        tag = soup.body
                        text = ''.join(list(tag.strings)[:-1])
                        metadata = {
                            "path": url
                        }
                        out.append({"content": str(text), "metadata": metadata})
                    else:
                        logger.critical(f"Failed to retrieve content, status code: {response.status_code}")
                except Exception as e:
                    logger.error(e)
        return out

@agberoz  check this

@YashBaviskar1  It's looking good!
A suggestion: When adding child URLs to the queue, please ensure they start with the base URL to prevent the crawler from navigating to other domains.

@agberoz
Sure, we can do that using .netloc to include and compare the domain of the urls
            from urllib.parse import urlparse

            #Base Domain of the FIRST(BASE URL)
            base_domain = urlparse(urls[0]).netloc

and then add this condition when appending the child url
                        if is_scan_child :
                            for a in soup.find_all('a', href = True) :
                                absolute_url = urljoin(url, a['href'])
                                if absolute_url not in self.visited_url and urlparse(absolute_url).netloc == base_domain :
                                    url_queue.append(absolute_url)

if the absolute_url is of different domain, it will not be added in the url_queue and hence the crawler will stay on the base domain.
Is this a valid approch

Ok i will soon send a PR if everything works! Thank you


react-native-reanimated pinned at 3.4.1 breaks expo go kitchen sink

try running kitchen sink with expo go, it doesn't work.
logging an issue to not forget about it.
I saw in https://github.com/tamagui/tamagui/blob/master/package.json#L84
we are explictly pinning to 3.4.1. Seems like kitchen sink is picking up 3.4.1 instead of 3.3.0 that expo requires.
@natew - what do you think is the best solution here? was thinking maybe breaking kitchen sink out and having some way to symlink just off the top of my head? Or is there a better way to isolate deps inside the monorepo?

i use a custom built version of kitchen sink so we can test everything incl the various native integrations (thus kitchen sink), we could probably pin down to match latest expo but we'd still need a custom build to run it i believe as metros eager require eval errors due to demos folder being glob imported.
I don't want to sacrifice that ease of testing all the demos or add much cruft with supporting go if we don't really need to.

Yeah, that makes sense. My goal is that we test everything and don't leave expo out. I only really harp on expo go because it's the lowest barrier of entry to folks using tamagui.

There’s definitely a way to make it work it can just load a different entry and use specific imports of packages.


issue with firebase plugin

I am getting this error when app open via action_process else its work perfect,
`[ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: MissingPluginException(No implementation found for method Firebase#initializeCore on channel plugins.flutter.io/firebase_core)
E/flutter ( 3613): #0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:157:7)
E/flutter ( 3613): <asynchronous suspension>
E/flutter ( 3613): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:332:12)
E/flutter ( 3613): #2      MethodChannel.invokeListMethod (package:flutter/src/services/platform_channel.dart:345:41)
E/flutter ( 3613): #3      MethodChannelFirebase._initializeCore (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:30:36)
E/flutter ( 3613): #4      MethodChannelFirebase.initializeApp (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:75:13)
E/flutter ( 3613): #5      Firebase.initializeApp (package:firebase_core/src/firebase.dart:44:25)
E/flutter ( 3613): #6      main (package:revwe/main.dart:19:18)
E/flutter ( 3613): #7      _runMainZoned.<anonymous closure>.<anonymous closure> (dart:ui/hooks.dart:231:25)
E/flutter ( 3613): #8      _rootRun (dart:async/zone.dart:1190:13)
E/flutter ( 3613): #9      _CustomZone.run (dart:async/zone.dart:1093:19)
E/flutter ( 3613): #10     _runZoned (dart:async/zone.dart:1630:10)
E/flutter ( 3613): #11     runZonedGuarded (dart:async/zone.dart:1618:12)
E/flutter ( 3613): #12     _runMainZoned.<anonymous closure> (dart:ui/hooks.dart:223:5)
E/flutter ( 3613): #13     _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:301:19)
E/flutter ( 3613): #14     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:168:12)
E/flutter ( 3613): `

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.22.6, on macOS 11.2.1 20D74 darwin-x64, locale en-CA)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 12.4)
[✓] Android Studio (version 4.1)
[✓] Connected device (1 available)
```
`

in AndroidManifest.xml added this lines
`<activity android:name="com.example.action_process_text.ActionProcessTextPlugin"
            android:label="My search" android:theme="@style/LaunchTheme">
            <intent-filter>
                <action android:name="android.intent.action.PROCESS_TEXT" />
                <data android:mimeType="text/plain"/>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>`

This seems to be an issue with firebase and not this plugin, so please refer this issue.
https://github.com/FirebaseExtended/flutterfire/issues/3212#issue-680705471
If you think it has something to do with this plugin,  please share the minimum reproducible code. Thank you.


OOM error while trying to solve LP

Testing the online version with an lp converted by glpsol from https://github.com/mingodad/GLPK/blob/master/examples/life_goe.mod glpsol --check -m life_goe.mod --wlp life_goe.mod.lp (see attached) we get this error message:
Error: Error: Unable to solve the problem. HiGHS error RuntimeError: Aborted(OOM). Build with -s ASSERTIONS=1 for more info.

But with the command line we can solve it:
highs life_goe.mod.lp
Running HiGHS 1.1.1 [date: 2021-12-17, git hash: 2da8f7d4]
Copyright (c) 2021 ERGO-Code under MIT licence terms
MIP  life_goe.mod has 350 rows; 388 cols; 1330 nonzeros; 248 integer variables

Presolving model
280 rows, 318 cols, 1190 nonzeros
280 rows, 318 cols, 1190 nonzeros
Objective function is integral with scale 600

Solving MIP model with:
   280 rows
   318 cols (178 binary, 0 integer, 0 implied int., 140 continuous)
   1190 nonzeros

( 0.0s) Starting symmetry detection
( 0.0s) No symmetry present

Solving root node LP relaxation

        Nodes      |    B&B Tree     |            Objective Bounds              |  Dynamic Constraints |       Work
     Proc. InQueue |  Leaves   Expl. | BestBound       BestSol              Gap |   Cuts   InLp Confl. | LpIters     Time

         0       0         0   0.00%   0               inf                  inf        0      0      0       168     0.0s
 T    1044       0       429 100.00%   0               0                  0.00%     8100    238   2200     25476     2.7s

Solving report
  Status            Optimal
  Primal bound      0
  Dual bound        0
  Solution status   feasible
                    0 (objective)
                    0 (bound viol.)
                    0 (int. viol.)
                    0 (row viol.)
  Timing            2.67 (total)
                    0.00 (presolve)
                    0.00 (postsolve)
  Nodes             1046
  LP iterations     25480 (total)
                    0 (strong br.)
                    2269 (separation)
                    5724 (heuristics)
2.68user 0.02system 0:02.68elapsed 100%CPU (0avgtext+0avgdata 55320maxresident)k

life_goe.mod.lp.zip

Hello, the memory size in webassembly is unfortunately limited.

I'm not sure if this is the real problem with the size of this problem (see on previous message on command line it was using 55MB), for example look at https://meimporta.eu/myglpk-ext/ that is glpsol also compiled to wasm, select a mode huge.mod then press the run glpsol button this problem needs 1.5GB to execute and it does it really well if you have enough memory, see the output bellow.
GLPSOL: GLPK LP/MIP Solver, v4.65-ex, glp_double size 8
Parameter(s) specified in the command line:
 --math input_file
Reading model section from input_file...
25 lines were read
Generating zumVariance...
Generating variances...
Model has been successfully generated
GLPK Simplex Optimizer, v4.65-ex
1048576 rows, 1048576 columns, 3145725 non-zeros
Preprocessing...
1048576 rows, 1048576 columns, 3145725 non-zeros
Scaling...
 A: min|aij| =  1.000e+00  max|aij| =  1.000e+00  ratio =  1.000e+00
Problem data seem to be well scaled
Constructing initial basis...
Size of triangular part is 1048575
      0: obj =   0.000000000e+00 inf =   5.498e+11 (1)
      1: obj =   0.000000000e+00 inf =   0.000e+00 (0)
OPTIMAL LP SOLUTION FOUND
Time used:   2.0 secs
Memory used: 1529.6 Mb<PHONE_NUMBER> bytes)
The arithmetic mean of the integers from 1 to 1048575 is<PHONE_NUMBER>00
Model has been successfully processed

v0.4.7 should fix the issue.
Thanks for the report, @mingodad  !


How to return back to PDF after an URL clicked?

Hello. How can I go back to PDF after an URL clicked and a web page appears in the viewer tab? Thanks!

I don't think this is currently possible, I asked this before as well: https://github.com/FirstTimeInForever/intellij-pdf-viewer/issues/23#issuecomment-860169451 so some changes need to be made.


Windows Commands/taskkill: /filter strings quoted

As reported in issue ticket #4870 (Incorrect syntax):
A text string used in combination with the taskkill parameter /filter
can not be properly interpreted as a filter string unless the text string
is encapsulated by quotation marks (double quotes). Otherwise,
the command will fail with the following response:
ERROR: Invalid argument/option - 'eq'.
Thanks to Jason Tenpenny (@jasontenpenny) for noticing and reporting the issue.
In addition to the adding the required quotes, I have cleaned up a couple of
misplaced uses of the escape character (\) in combination with
the wildcard character asterisk (*) in the text.
I also added an editorial blank line between the MarkDown description box and the page title.
Closes #4870

#sign-off


Improve example hiera file

add some coments

add 3 node example

Add some key elements that were missing, such as scaleio::version and  scaleio::components

Thanks for adding missing things. The stack.yaml file is also used as an input for the spec tests. With those added values, the tests don't pass anymore. Therefore please update the values or tests, so that the spec tests still pass.


Is parallelism available on GPU?

Can xtalker be used in multi-GPU environment? If yes, then how?

No, it cannot. The parallelism is only for Xeon CPU.

@SuperMaximus1984 Hello can someone @shyam-kadam  or @Spycsh  help me install it? Ideally Iw ould like to make it work on google collab,


Preview isn't Working after Kotlin 1.4 bump.

Preview isn't working.  It was working with Kotlin 1.3.72 and compose 14, but the bumps (while the code works & launches), then Android Studio previews now fail.
Commit with changes: https://github.com/android/compose-samples/commit/90e3fb07f27f9d7b6b58de75af458cf9ed805af3
Android Studio 4.2 Canary 7

Unfortunately this is a known issue and is awaiting a fix in Studio to support Kotlin 1.4 in previews. I'll leave this open in case folks want to follow and close once resolved.

I have the same problem. Can i return dev15 to dev14 to resolve this error?

That should work. You can also follow along here: https://issuetracker.google.com/issues/162000445

Previews are back!


Add linux kernel with protect payload policy.

This commit gives the possibility to start Miralis with the linux kernel while the payload is isolated from the firmware through the protect payload policy.

@CharlyCst A few values are hardcoded, we need to create an artifact before merging. I will do that


Issues signing in after manually copying conway folder

When signing in, I am receiving the below error in my logs:
2024-09-10 21:30:21.161 ERROR (MainThread) [custom_components.coway.config_flow] Unable to connect to IoCare: Failed to Log In
2024-09-10 21:34:29.614 ERROR (MainThread) [custom_components.coway.config_flow] Unable to connect to IoCare: Failed to Log In

Turn off IPv6 on Home Assistant. Some users reported when IPv6 is enabled in Home Assistant, it causes issues with logging in.

I have that already off as IPV6 seems to cause more issues than it solves on a home network. I am only using IPV4. I am also using Home Assistant's appliance.

@RobertD502 Thank you for your help. I am finding the manual add to custom components did not yield the same integration as using HACS. I was successfully able to add the integration after installing HACS and then your package/repository.
Thank you for your fast responses. Keep up the great work on this!!!


Move to postgres

That's the database of choice hasadna uses

@yosiat I will take over your pull request, assuming you don't have any unpublished changes in your environment...

Installed postgres addon.
Use heroku addons:docs heroku-postgresql to view documentation.


Make it clearer when to run vagrant up

https://kingfisher-vagrant.readthedocs.io/en/latest/#starting-and-building-the-vagrant-box
For less technical users, it could be clearer where to run the vagrant up command, particularly as people returning to work they did earlier will have done all the git clone steps.
From https://github.com/open-contracting/kingfisher-views/issues/135

No longer a problem for the linked issue, so closing.


Please add Git tags

Please add Git tags to permit pinning specific versions.
This would permit workflows like: jb install<EMAIL_ADDRESS>

A specific version can be installed like this: jb install github.com/grafana/grafonnet/gen/grafonnet-v9.4.0

+1
I appreciate the jb versioning and repository directory layout versioning allows us to pin versions, linking this to git tags is helpful for general git aware tooling which handles dependency management.
Given this nature of this project leans toward being plugged into automated dev-ops pipelines, I should imagine this to be a common requirement - it certainly is for me!
It also helps with #24.

Closing this as duplicate of #24, this is a request for an alternative install method. The current supported way is to use jsonnet-bundler, which supports versions as shown above and has lock file capabilities to pin to a specific version in time.


Hi bro love your work! is it possible to add wallet connect to the dapp?

Hi bro love your work! is it possible to add wallet connect to the dapp as im having issues with people using other wallets than meta? is there a simple way to add it in vsc?

https://github.com/HashLips/hashlips_nft_minting_dapp/issues/69#issuecomment-1045125283

Yeah I would also like this feature to be added


Crashes with pip < 6.x

Traceback (most recent call last):
  File "/virtualenv/bin/pip-review", line 40, in <module>
    from pip._vendor.packaging import version as packaging_version
ImportError: No module named packaging

pip (1.5.4)
pip-review (0.4)

Using pip-tools==0.3.6 pip-review works fine with the same old version of pip so it looks like there was a regression after the fork.

Yes that's right, this dependency was introduced with pull request #1. The --pre flag depends on it. I didn't realise this could break things for people using old versions of pip, sorry for not thinking that through. Is upgrading pip not an option for you?

I can upgrade, just wanted to report this as it is a bit of a regression and pip 1.5.4 is what comes stock on Ubuntu 14.04 LTS so I'm sure people will be running into this.
I guess its up to you if you want to just update install_requires in setup.py to depend on pip>=6 or figure out a work-around, for me I do all development from virtualenvs so updating pip is never an issue.

Thanks for reporting. I can probably make it work without depending on pip>=6, so I'll fix it that way.


SO-4776: Allow import to progress in spite of missing referenced components

Codecov Report

Merging #803 (7f61ce1) into 7.x (712685e) will decrease coverage by 0.03%.
The diff coverage is 52.85%.

@@             Coverage Diff              @@
##                7.x     #803      +/-   ##
============================================
- Coverage     61.52%   61.48%   -0.04%
+ Complexity    10944    10937       -7
============================================
  Files          1589     1588       -1
  Lines         53531    53555      +24
  Branches       5302     5303       +1
============================================
- Hits          32933    32927       -6
- Misses        18463    18492      +29
- Partials       2135     2136       +1

Impacted Files
Coverage Δ
Complexity Δ

...re/request/rf2/importer/Rf2EffectiveTimeSlice.java
88.14% <0.00%> (-1.33%)
43.00 <0.00> (ø)

...ore/request/rf2/validation/Rf2GlobalValidator.java
61.34% <47.27%> (-9.33%)
17.00 <12.00> (+3.00)
:arrow_down:

...omed/datastore/config/SnomedCoreConfiguration.java
55.42% <50.00%> (-0.28%)
22.00 <1.00> (+1.00)
:arrow_down:

...l/snomed/core/rest/SnomedRf2ImportRestService.java
87.09% <100.00%> (+0.43%)
6.00 <0.00> (ø)

.../datastore/request/rf2/SnomedRf2ImportRequest.java
84.66% <100.00%> (+0.31%)
34.00 <1.00> (+1.00)

...ore/request/rf2/SnomedRf2ImportRequestBuilder.java
100.00% <100.00%> (ø)
8.00 <1.00> (+1.00)

...version/CodeSystemVersionSearchRequestBuilder.java
48.00% <0.00%> (-16.00%)
6.00% <0.00%> (-1.00%)

...wl/fhir/core/model/conceptmap/TranslateResult.java
77.41% <0.00%> (-6.46%)
6.00% <0.00%> (-1.00%)

...system/version/CodeSystemVersionSearchRequest.java
78.00% <0.00%> (-4.00%)
14.00% <0.00%> (-1.00%)

...national/snowowl/core/locks/OperationLockInfo.java
43.33% <0.00%> (-3.34%)
7.00% <0.00%> (-1.00%)

... and 17 more

Continue to review full report at Codecov.

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


Tutorial and Usage is wrong

Following the example in Tutorial & Usage doesn't work, so either the docs are out of date or something is broken:
import requests_html_playwright
from requests_html_playwright import HTMLSession
Traceback (most recent call last):
  File "D:\OSGeo4W\apps\Python39\lib\code.py", line 90, in runcode
    exec(code, self.locals)
  File "<input>", line 1, in <module>
ImportError: cannot import name 'HTMLSession' from 'requests_html_playwright' (D:\OSGeo4W\apps\Python39\lib\site-packages\requests_html_playwright\__init__.py)

I need to access HTMLSession() like this:
from requests_html_playwright import requests_html
session = requests_html.HTMLSession()
r = session.get('https://python.org/')
r.html.url
'https://www.python.org/'

Thank you for reporting the issue, and apologies for the late response!
The issue has been resolved!
https://github.com/Asugawara/requests-html-playwright/pull/20


[CLOSED] Get regular path

Issue by Yomodo from Sunday Jan 11, 2015 at 15:31 GMT
Originally opened as https://github.com/alphaleonis/AlphaFS/pull/69

Yomodo included the following code: https://github.com/alphaleonis/AlphaFS/pull/69/commits

Comment by Yomodo from Sunday Jan 11, 2015 at 15:45 GMT

@alphaleonis I was having some conflicts while merging. Seems I did not had a full update first
so I abandoned the merge.

Comment by alphaleonis from Sunday Jan 11, 2015 at 15:38 GMT

@Yomodo Howcome you closed this without merging?

Comment by alphaleonis from Sunday Jan 11, 2015 at 15:48 GMT

@Yomodo Okay. But you don't need to delete the pull request neccessarily. You can just locally merge master to your branch, and then push those changes and they will be included in the pull request already created.  (Any changes you make to a branch after creating a pull request will be included in the pull-request).


Adding Sitemap importer.

Point the importer to a sitemap and it will use HTMLScraper importer to fetch all the pages in a site.

Nice, wanna add it to the README and then we can pull it in?

Yeah - happy to, I didn't see one for the HTML importer so I decided to not expose it... just need 5 mins

Oh! Mind adding them both? lol


Dynamixel gets stuck after some movement.

Which TurtleBot3 you have?

[x] Waffle Pi

Which SBC(Single Board Computer) is working on TurtleBot3?

[x] Raspberry Pi 3

Which OS you installed in SBC?

[x] Raspbian

Which OS you installed in Remote PC?

[x] Ubuntu 18.04 LTS (Bionic Beaver)

Write down software version and firmware version

Software version: TurtleBot: ROS kinetic 1.12.13
Firmware version: OpenCR 1.3.2

Write down the commands you used in order

Tried resetting the firmware of dynamixel by using R+Manager
Then setup the dynamixel using turtlebot_setup_motor

Please, describe detailedly what difficulty you are in

The dynamixel wheels move for some time and then start beeping with USR1 continuously red and after that the wheels don't move at all.

I took a video of this if it's helpful.

Hi :)
Because of low battery, the red led was on. Please check your battery.

Duh!

If you have any further issue, please feel free to open issue :)


Do user supplied uploads need sanitising?

(Fill in the relevant information below to help triage your issue.)

Q
A

Version
^9.6

Question
(Please explain in plain english your question)
I was just wondering whether the package performs any sanitisation behind the scenes?
I'm allowing users to upload a csv (i.e. potentially unsafe input).
Do I need to sanitise the file before I read it with the package or is that performed by the reader?
If I need to perform it, are there any best practices that you are aware of?
Thanks for your time.
Checks before submitting

[x] Be sure that there isn't already an issue about this. See: Issues list
[x] Be sure that there isn't already a pull request about this. See: Pull requests
[x] I have read, search and not found the information on the documentation website.
[x] I have read, search and not found the information on PHP related forums and/or websites.
[x] This issue is about 1 question around the package with no business or domain specific logic related to a specific situation.
[x] The question has a descriptive title. For example:  "Can I use the library with compressed CSV documents ?".

@DazDotOne thanks for using the library and yes the package does not sanity or validation check these should be performed by you prior to using the document with the library.
For best practices I'm afraid it all depends on how you acquire and interact with the document and which type of document you get. I can't answer that question.

Thanks for the help (and package). I figured I ask before starting to work on a solution,
I'll get started then.


[FEATURE] Known Mod Conflicts

Please use this bug to suggest known mod conflicts that frequently crop up when troubleshooting a mod set.
This is not the place for "this mod doesn't work"
This is the place for "If you load these two mods together, odd things happen"
For the current list, please see: lib/mod-checker-conflicts.js

Already noted:

"FS19_InfoMenu"  and "FS19_UnitConvertLite"  and "FS19_additionalFieldInfo"

Some versions will not work with the Precision Farming DLC

"FS19_towBar"

Old versions of the Tow Bar have been reported to be game breaking.

"FS19PlaceAnywhere"  and "FS19_GlobalCompany"

The Place Anywhere / GC: Extended Placeables can conflict when used together

"FS19_REA" and "FS19_realMud"

These can both conflict with some vehicles (almost always because of the vehicle mod)

Straw Harvest (<IP_ADDRESS>)
Conflicts:

Seasons, CCM
mixed-up fruit types (snow to strawPellets)/To many fruits: Limit of fruits is reached

BalerAddon
Balers of SH can not be filled with netting/yarn, bales cannot be ejected

RoundbalerExtension (below version <IP_ADDRESS>)
automatic roundbale ejection

variableBaleCapacity
bug with the Premos Bale Shredder vehicle

AutoloadTrailer
Palletizer does not start automatically when pallets are loaded with autoload trailers off of the palletizer

Alfalfa
No bale support

Global Company (Sawmill addon)

seeBales (below version <IP_ADDRESS>)
pallets 0l fill level and gamecrash when selling pallets

RealDirtFix

AutomaticBaleUnload

UAE
using bale grabs = Lua error

MoreBunkerSilo (below version <IP_ADDRESS>), PotatoeWaschPlant, whiskeyDistellery and GrainDrying
Pallets can´t be sold

Alpine DLC (below version <IP_ADDRESS>)
Strange fillType behaviour when Alpine DLC is installed, Hall with no collision

Beet Harvest Addon

Mod folder in OneDrive or Epic Games may cause problems like pallets not selling at station

Season

Do not load multiple map mods. Only load the map you are using!
Any mod that manipulates the weather, e.g. Multi overlay hud
Any mod that manipulates growth
Any mod that changes animals
Any 'season manager' type mods
Some animal cleaning mods may not work correctly, especially during the winter

Straw Harvest (<IP_ADDRESS>)

AutomaticBaleUnload

Is this a specific mod, or an extension of the autoload problem above?

UAE
using bale grabs = Lua error

I'm guessing this is a specific mod, but I couldn't find it.
All the rest are added in 2ffd18e007f3a8f77238f09a402e50d0b90e0b53

Seasons

Added in f1ca0b6ca24b932ad13483feb4b14b31138bb654

It's mod (by Ifko[nator])
honestly, unfortunately, I do not remember what it was, I copied this list from the creative mesh server, but this conflict has been included in the list for a long time, possibly some mod from "attacher" to forks or a script

"FS19_towBar" - conflict with SimpleIC: unable to use SimpleIC function

'FS19_HofBergmann' : {
confWith : [
'FS19_MaizePlus'
'FS19_MaizePlus_ccmExtension'
'FS19_MaizePlus_forageExtension'
'FS19_MoreBunkersilo'
'FS19_1TidyShop_UsedEquipment'
'FS19_SeeBales'
'FS19_BulkBuy'
'FS19_FillLevelLimiter'
'FS19_BeetHarvest_Addon'
'FS19_manualAttach'
'FS19_MapObjectsHider'
'FS19_towBar'
'FS19_parkVehicle'

foreign bale storages
foreign productions of compost
foreign productions of rye flour
foreign productions of honey

],
message  : {
en : 'This mod is part of a list of mods recognized as incompatible with the Hof Bergmann map, as stated in the PDF file that is attached with the map.',
fr : 'Ce mod fait partie d'une liste de mods reconnus comme incompatibles avec la carte Hof Bergmann, comme stipulé dans le fichier PDF qui est joint avec la carte.'
'FS19_HofBergmann' : {
confWith : [
'FS19_GlobalCompany'
'FS19_GlobalCompanyAddOn_FieldLease'

FruitTrees

],
message  : {
en : 'Not recommended because often conflicts and errors with existing functions from the map.'
fr : 'Non recommandé car il y a souvent des conflits et des erreurs avec les fonctions existantes de la carte.'
I hope a list in this form is fine, as for some examples keyword detection would be better than exact mod names. I let you make the necessary adjustments.
source : https://www.lsfarming-mods.com/faq/#entry-11
Taco.

FS19_ProductionsForAnimals - In the absence of a compatible map, this mod is the reason for the lack of access to the animal menu.


When amount is entered in Site Assessment Check list tick box is marked

In the Checklist tab in Site Assessments, it would be nice if the tick box for Portapottie and/or Waste / Dump Trailer is marked when a cost amount is entered. This will ensure that the amount shows up in the PAF PDFs when they are generated.

This issue is no longer needed with the Project Summary and Work Item redesign done by Andy Situ.

This issue is no longer needed with the Project Summary and Work Item redesign done by Andy Situ.


[shared_preferences] Convert macOS to Pigeon

Converts the macOS implementation of shared_preferences to Pigeon now that we have a Swift generator.

The Dart implementation is taken directly from the iOS package, which was already converted to Pigeon, just with the names changed.
The Pigeon definition is also taken directly from the iOS package, with the PigeonOptions adjusted and some TODO comments added for future improvements.
The Dart tests are mostly taken directly from the iOS package, but some missing type coverage has been added.
The Swift implementation is just moving existing implementations into the new Pigeon API functions, with the arg extraction thrown away.
The Swift tests are mostly straight conversion, but I noticed that remove was missing coverage, as were some types, so I added those.

Part of https://github.com/flutter/flutter/issues/117914
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/plugins repo does use dart format.)
[x] I signed the CLA.
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
[x] I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

I'll need to fix https://github.com/flutter/flutter/issues/117994 so that lint_podspec passes; that doesn't need to block review though since it'll only change generated code.

Hey there, I didn't found an implementation for setString or setStringList here


Feature Request: Bootstrap Modals

Are you planning to add bootstrap modal or you are going to merge 'modal-native' branch with master ?

Yes, I do plan that. In fact it will be the next feature coming.
In the modal branch there is a working implementation, that uses the bootstrap.js and encapsulates that in a component. It is fully working already, but lacks tests and documentation. However I do plan to rewrite it as a purely native ember component (modal-native branch), as the other has some drawbacks (does not behave very well in acceptance tests, as the Ember Run Loop is not used internally).
Bottom line: stay tuned! ;)

Great, looking forward to next release. :+1:

Looking forward to this :+1:

Also looking forward to this!

@simonihmig great work on the library! I noticed you have a couple of modal branches and was curious if these were functional or when you expected to be finished? I'd be more than willing to give a hand if it will help. Let me know!

@jamesdixon Thanks. Ember-native contains a working implementation, that I have used already for a production project. It lacks however documentation and tests, so I have not merged it yet. You might want to use it if you need it right now, but without any guarantees! ;)

Thanks, @simonihmig! I know you said you don't have any documentation, but perhaps you might be willing to share one an example from your application? Thanks!

Have a look at the dummy application in the tests folder: https://github.com/kaliber5/ember-bootstrap/blob/modal-native/tests/dummy/app/templates/modal.hbs

@simonihmig thanks!

A first implementation is available as of now in v0.5.0!

@simonihmig very nice!


Added handling logic for expired iterators

This module saves the nextShardIterator in a field on a list of shards which are looped over whenever the stream is polled. Under normal circumstances this works great, but in the event of a network outage, eventually that saved nextShardIterator will expire (AWS expires it after 15 minutes). When this happens, no matter how many times you poll and execute fetchStreamState, it will always throw an error because it never fetches a new iterator. No new records will ever be processed because that error bubbles back up to the top.
The fix is fairly simple, when the expired error happens, I just set the nextShardIterator to undefined, which will cause the code to fetch a new iterator (line 169) the next time fetchStreamState is called. There's really nothing else you can do at this point since the iterator is expired.

@kessler Just wanted to see if this fix is something you were interested in. It's definitely an edge case but will improve the robustness of the module. Basically the polling will recover properly when an event like this happens. I've been testing it for about a week now and have simulated the scenario a bunch and it seems to work properly.

Thank you @jquatier
I sometimes had this error:

[ResourceNotFoundException: Requested resource not found: Shard does not exist]
I hope your pull request will solve it :)

@ironsrc Any hope to see this PR merged and packaged for npm ? I had to specify the commit hash in my package.json
Thanks for the package btw, it avoid me to get into the low level dynamodb stream functioning !

Hi, will review this on the weekend and merge :-)


add spin sdk based http client

This PR helps setting up a http.Client backed by spin-sdk. We can then pass this to any 3rd party lib, which will make use of the RoundTrip provided by the transport in this client.
e.g. to make use of existing Twitter sdk, I could do following:
package main

import (
	"context"
	"fmt"
	"net/http"

	"github.com/dghubble/go-twitter/twitter"
	"github.com/dghubble/oauth1"

	spinhttp "github.com/fermyon/spin/sdk/go/http"
)

func init() {
	spinhttp.Handle(func(w http.ResponseWriter, r *http.Request) {
		config := oauth1.NewConfig("consumerKey", "consumerToken")
		token := oauth1.NewToken("token", "tokenSecret")

		spinhttpclient := spinhttp.NewClient()
		ctx := context.WithValue(oauth1.NoContext, oauth1.HTTPClient, spinhttpclient)
		httpclient := config.Client(ctx, token)
		client := twitter.NewClient(httpclient)

		_, _, err := client.Statuses.Update("test tweet, pls ignore !", nil)
		if err != nil {
			http.Error(w, err.Error(), http.StatusInternalServerError)
			return
		}

		w.Header().Set("Content-Type", "text/plain")
		fmt.Fprintln(w, "Hello Fermyon!")
	})
}

As far as I can tell, this depends on the current dev branch of TinyGo.
Once there is a new release, this looks good to me, tested with a few client libraries that had configurable clients and everything LGTM!

on second thought, that might not be the case. as in the testdata app spin-roundtrip we are exercising this functionality already in our ci (which runs v0.27.0 of tinygo)

OH, you're right!

OH, you're right!
The one question I have is whether we want to add this to be the default client.
Specifically, we could add an init function (or more?) somewhere in the SDK, where we set the default client:
func init() {
	http.DefaultClient = NewClient()
}

This will allow the handler to directly call http.Get for example, without setting up your own client / transport.
In any case, this change looks great, and this would be a follow-up addition — not blocking this PR.

yeah, I am not too sure about that. This almost feels magical and sometimes people don't like magic :). what do you think @adamreese

Well, HTTP operations will not work without it, so it's not as much magic as it is making something work.
But if we decide that would be a good idea, this would be a follow-up, I don't want to hold this PR.

ok, that sounds good to me. I'll go ahead and merge this PR


Incomplete tutorial

In the point 2 of "Create a database connection and configure the client and server project" I am invited to download the backend code but it is never explained how to use it and how to deploy it on the just created web app. Could you give me the part that I am missing ?

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

ID: 7041142f-6df3-4e70-b1b9-22b2f13f4966
Version Independent ID: 4a9dc512-f04b-fd66-5c25-b2095522b497
Content: Create an Android app on Azure App Service Mobile Apps
Content Source: articles/app-service-mobile/app-service-mobile-android-get-started.md
Service: app-service-mobile
GitHub Login: @conceptdev
Microsoft Alias: crdun

Thanks for your feedback @TheEye1806 - these docs are currently being updated, due to changes in the Azure portal.
cc @elamalani

Thank you for the quick update of the tutorial, I got the system up and running now !

@TheEye1806 Thanks for the verification. Good to know that it's all set up for you.

Is there an easier way to access an azure sql database ? I only need a demo app and I don't really have time nor the knowledge to rewrite the entire .net backend.

@theeye1806 how did you manage to use the backend code? i cant find any instructions for it


Add ability to tag metrics based on marathon labels

What does this PR do?
Use label_tags in the config to specify the name of labels to use as
tags for metrics for an application
Motivation
We label our marathon applications with things like team_name or environment_name and would like this to be reflected in the datadog metrics.
Review checklist

[ ] PR has a meaningful title or PR has the no-changelog label attached
[ ] Feature or bugfix has tests
[ ] Git history is clean
[ ] If PR impacts documentation, docs team has been notified or an issue has been opened on the documentation repo

Additional Notes
Anything else we should know when reviewing?

I can't add labels but I believe it should be changelog/Added

Codecov Report

Merging #2165 into master will decrease coverage by 18.48%.
The diff coverage is 84.61%.


Mm 44497 playbook refresh issues

Summary

After adding/removing a playbook member, the member's number indicator did not update on the PDP.
After converting the playbook to private, the PDP header didn't show a lock icon.

This PR fixes both issues.
https://user-images.githubusercontent.com/4368372/190228953-399f5c0d-38c1-4053-afbd-8395667471c2.mp4
Ticket Link
https://mattermost.atlassian.net/browse/MM-44497
https://mattermost.atlassian.net/browse/MM-41083
https://mattermost.atlassian.net/browse/MM-44506
Checklist

- [ ] Telemetry updated
- [ ] Gated by experimental feature flag

[x] Unit tests updated

/merge-branch

/update-branch


Can't build on M1 Macbook

Whenever I try to run $ make  from the terminal, it gives this error:
jack@Jacks-MacBook-Pro minecraft-again % make
mkdir -p ./bin
export LD_PATH="-framework QuartzCore -framework Cocoa -framework Carbon -framework Metal -framework CoreFoundation -framework IOKit"
cd lib/bx && make osx-arm64
make[1]: *** No rule to make target osx-arm64'.  Stop.
make: *** [libs] Error 2

Git shows this error when I open the repo's overview
fatal: no submodule mapping found in .gitmodules for path 'lib/bgfx'

Status: 128

Help...

All submodules were missing. Change the .gitsubmodule with the following:
[submodule "lib/bgfx"]
	path = lib/bgfx
	url = https://github.com/bkaradzic/bgfx.git
[submodule "lib/bimg"]
	path = lib/bimg
	url = https://github.com/bkaradzic/bimg.git
[submodule "lib/bx"]
	path = lib/bx
	url = https://github.com/bkaradzic/bx.git
[submodule "lib/glfw"]
	path = lib/glfw
	url = https://github.com/glfw/glfw.git
[submodule "lib/glm"]
	path = lib/glm
	url = https://github.com/g-truc/glm.git
[submodule "lib/tomlplusplus"]
	path = lib/tomlplusplus
	url = https://github.com/marzer/tomlplusplus

Then initi the modules and update:
git submodule init
git submodule update

Just tried it; the error stopped showing up in git, but it still shows the same error when building. Also, I looked around a little more, and saw that VS Code found a lot of errors in the platform.cpp file...

I don't know if that helps but let me know if there's anything else I can do.

@fnky Thanks for that, the updates .gitmodules file has been included with 8125707bcac6d1eb51ad1a4b76ec2b07b9002631
@Techman55 VSCode is going to show a lot of errors because it doesn't have the project structure - I would recommend using a tool like bear and clangd if you want proper include paths in the project.

I updated git submodule, and run make, still get the same error.
mkdir -p ./bin
export LD_PATH="-framework QuartzCore -framework Cocoa -framework Carbon -framework Metal -framework CoreFoundation -framework IOKit"
cd lib/bx && make osx-arm64
make[1]: *** No rule to make target `osx-arm64'.  Stop.
make: *** [libs] Error 2

@GuiHva bx and bimg does not have those targets. You will need to add them yourself:
Add the following to lib/bx/makefile and lib/bimg/makefile:
.build/projects/gmake-osx-arm64:
	$(GENIE) --gcc=osx-arm64 gmake
osx-arm64-debug: .build/projects/gmake-osx-arm64
	make -C .build/projects/gmake-osx-arm64 config=debug
osx-arm64-release: .build/projects/gmake-osx-arm64
	make -C .build/projects/gmake-osx-arm64 config=release
osx-arm64: osx-arm64-debug osx-arm64-release

ok, i added and it's already compiling, but occurred with another error. :(
==== Building bin2c (debug) ====
Creating ../../osx-arm64/obj/Debug/bin2c
Creating ../../osx-arm64/obj/Debug/bin2c/tools/bin2c
bin2c.cpp
Linking bin2c
Undefined symbols for architecture arm64:
  "_NSLog", referenced from:
      bx::debugOutput(char const*) in libbxDebug.a(debug.o)
  "___CFStringMakeConstantString", referenced from:
      bx::debugOutput(char const*) in libbxDebug.a(debug.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [../../osx-arm64/bin/bin2cDebug] Error 1
make[2]: *** [bin2c] Error 2
make[1]: *** [osx-arm64-debug] Error 2
make: *** [libs] Error 2

Which version of Xcode and clang are you using?
clang++ -v
xcodebuild -version

This is my environment.
system: macOS Monterey 12.1
clang++:
  Apple clang version 13.0.0 (clang-13<IP_ADDRESS>)
  Target: arm64-apple-darwin21.2.0
xcodebuild:
  Xcode 13.2.1
  Build version 13C100

Ah yes, this is another issue in bx.

In lib/bx/scripts/toolchain.lua find the configuration for "osx-arm64" (line 1007).
Add the following in to linkoptions list:  	linkoptions {
  		"-arch arm64",

  	"-framework Foundation"
  }

I added, still get the same error:

Make sure to clean your build files (lib/bx/.build), or use make clean.

Thank you! finally :), make clean does not clean bx build, must run rm -rf lib/bx/.build to delete pre-build files, compile passing now.

You have to change the directory to lib/bx before running make clean to clean build files for that particular project.
Glad you got it working :)

I just followed everything above, and I get a different error:
jack@Jacks-MacBook-Pro bx % make
../bx/tools/bin/darwin/genie                       vs2017
Building configurations...
Running action 'vs2017'...
Generating ".build/projects/vs2017/bx.sln"
Generating ".build/projects/vs2017/bx.vcxproj"
Generating ".build/projects/vs2017/bx.vcxproj.user"
Generating ".build/projects/vs2017/bx.vcxproj.filters"
Generating ".build/projects/vs2017/bin2c.vcxproj"
Generating ".build/projects/vs2017/bin2c.vcxproj.user"
Generating ".build/projects/vs2017/bin2c.vcxproj.filters"
Generating ".build/projects/vs2017/lemon.vcxproj"
Generating ".build/projects/vs2017/lemon.vcxproj.user"
Generating ".build/projects/vs2017/lemon.vcxproj.filters"
Generating ".build/projects/vs2017/bx.test.vcxproj"
Generating ".build/projects/vs2017/bx.test.vcxproj.user"
Generating ".build/projects/vs2017/bx.test.vcxproj.filters"
Generating ".build/projects/vs2017/bx.bench.vcxproj"
Generating ".build/projects/vs2017/bx.bench.vcxproj.user"
Generating ".build/projects/vs2017/bx.bench.vcxproj.filters"
Done. Generated 16/16 projects.
../bx/tools/bin/darwin/genie                       vs2019
Building configurations...
Running action 'vs2019'...
Generating ".build/projects/vs2019/bx.sln"
Generating ".build/projects/vs2019/bx.vcxproj"
Generating ".build/projects/vs2019/bx.vcxproj.user"
Generating ".build/projects/vs2019/bx.vcxproj.filters"
Generating ".build/projects/vs2019/bin2c.vcxproj"
Generating ".build/projects/vs2019/bin2c.vcxproj.user"
Generating ".build/projects/vs2019/bin2c.vcxproj.filters"
Generating ".build/projects/vs2019/lemon.vcxproj"
Generating ".build/projects/vs2019/lemon.vcxproj.user"
Generating ".build/projects/vs2019/lemon.vcxproj.filters"
Generating ".build/projects/vs2019/bx.test.vcxproj"
Generating ".build/projects/vs2019/bx.test.vcxproj.user"
Generating ".build/projects/vs2019/bx.test.vcxproj.filters"
Generating ".build/projects/vs2019/bx.bench.vcxproj"
Generating ".build/projects/vs2019/bx.bench.vcxproj.user"
Generating ".build/projects/vs2019/bx.bench.vcxproj.filters"
Done. Generated 16/16 projects.
../bx/tools/bin/darwin/genie --gcc=android-arm     gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_ARM, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-arm/Makefile"
Generating ".build/projects/gmake-android-arm/bx.make"
Generating ".build/projects/gmake-android-arm/bin2c.make"
Generating ".build/projects/gmake-android-arm/lemon.make"
Generating ".build/projects/gmake-android-arm/bx.test.make"
Generating ".build/projects/gmake-android-arm/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=android-arm64   gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_ARM64, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-arm64/Makefile"
Generating ".build/projects/gmake-android-arm64/bx.make"
Generating ".build/projects/gmake-android-arm64/bin2c.make"
Generating ".build/projects/gmake-android-arm64/lemon.make"
Generating ".build/projects/gmake-android-arm64/bx.test.make"
Generating ".build/projects/gmake-android-arm64/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=android-x86     gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_X86, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-x86/Makefile"
Generating ".build/projects/gmake-android-x86/bx.make"
Generating ".build/projects/gmake-android-x86/bin2c.make"
Generating ".build/projects/gmake-android-x86/lemon.make"
Generating ".build/projects/gmake-android-x86/bx.test.make"
Generating ".build/projects/gmake-android-x86/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=mingw-gcc       gmake
Set MINGW environment variable.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-mingw-gcc/Makefile"
Generating ".build/projects/gmake-mingw-gcc/bx.make"
Generating ".build/projects/gmake-mingw-gcc/bin2c.make"
Generating ".build/projects/gmake-mingw-gcc/lemon.make"
Generating ".build/projects/gmake-mingw-gcc/bx.test.make"
Generating ".build/projects/gmake-mingw-gcc/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=linux-gcc       gmake
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-linux/Makefile"
Generating ".build/projects/gmake-linux/bx.make"
Generating ".build/projects/gmake-linux/bin2c.make"
Generating ".build/projects/gmake-linux/lemon.make"
Generating ".build/projects/gmake-linux/bx.test.make"
Generating ".build/projects/gmake-linux/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=haiku           gmake
Error: invalid value 'haiku' for option 'gcc'
stack traceback:
        [C]: in function 'error'
        [string "_WORKING_DIR        = os.getcwd()..."]:63: in function '_premake_main'
make: *** [all] Error 1

ok, i added in bx/makefile line 123 with these

Yeah, ignore that... I ran make from the lib/bx folder. I really need some sleep :)
Although I do get this error when running it from the right directory:
==== Building bin2c (debug) ====
Linking bin2c
Undefined symbols for architecture arm64:
  "_NSLog", referenced from:
      bx::debugOutput(char const*) in libbxDebug.a(debug.o)
  "___CFStringMakeConstantString", referenced from:
      bx::debugOutput(char const*) in libbxDebug.a(debug.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [../../osx-arm64/bin/bin2cDebug] Error 1
make[2]: *** [bin2c] Error 2
make[1]: *** [osx-arm64-debug] Error 2
make: *** [libs] Error 2

I just followed everything above, and I get a different error:
jack@Jacks-MacBook-Pro bx % make
../bx/tools/bin/darwin/genie                       vs2017
Building configurations...
Running action 'vs2017'...
Generating ".build/projects/vs2017/bx.sln"
Generating ".build/projects/vs2017/bx.vcxproj"
Generating ".build/projects/vs2017/bx.vcxproj.user"
Generating ".build/projects/vs2017/bx.vcxproj.filters"
Generating ".build/projects/vs2017/bin2c.vcxproj"
Generating ".build/projects/vs2017/bin2c.vcxproj.user"
Generating ".build/projects/vs2017/bin2c.vcxproj.filters"
Generating ".build/projects/vs2017/lemon.vcxproj"
Generating ".build/projects/vs2017/lemon.vcxproj.user"
Generating ".build/projects/vs2017/lemon.vcxproj.filters"
Generating ".build/projects/vs2017/bx.test.vcxproj"
Generating ".build/projects/vs2017/bx.test.vcxproj.user"
Generating ".build/projects/vs2017/bx.test.vcxproj.filters"
Generating ".build/projects/vs2017/bx.bench.vcxproj"
Generating ".build/projects/vs2017/bx.bench.vcxproj.user"
Generating ".build/projects/vs2017/bx.bench.vcxproj.filters"
Done. Generated 16/16 projects.
../bx/tools/bin/darwin/genie                       vs2019
Building configurations...
Running action 'vs2019'...
Generating ".build/projects/vs2019/bx.sln"
Generating ".build/projects/vs2019/bx.vcxproj"
Generating ".build/projects/vs2019/bx.vcxproj.user"
Generating ".build/projects/vs2019/bx.vcxproj.filters"
Generating ".build/projects/vs2019/bin2c.vcxproj"
Generating ".build/projects/vs2019/bin2c.vcxproj.user"
Generating ".build/projects/vs2019/bin2c.vcxproj.filters"
Generating ".build/projects/vs2019/lemon.vcxproj"
Generating ".build/projects/vs2019/lemon.vcxproj.user"
Generating ".build/projects/vs2019/lemon.vcxproj.filters"
Generating ".build/projects/vs2019/bx.test.vcxproj"
Generating ".build/projects/vs2019/bx.test.vcxproj.user"
Generating ".build/projects/vs2019/bx.test.vcxproj.filters"
Generating ".build/projects/vs2019/bx.bench.vcxproj"
Generating ".build/projects/vs2019/bx.bench.vcxproj.user"
Generating ".build/projects/vs2019/bx.bench.vcxproj.filters"
Done. Generated 16/16 projects.
../bx/tools/bin/darwin/genie --gcc=android-arm     gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_ARM, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-arm/Makefile"
Generating ".build/projects/gmake-android-arm/bx.make"
Generating ".build/projects/gmake-android-arm/bin2c.make"
Generating ".build/projects/gmake-android-arm/lemon.make"
Generating ".build/projects/gmake-android-arm/bx.test.make"
Generating ".build/projects/gmake-android-arm/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=android-arm64   gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_ARM64, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-arm64/Makefile"
Generating ".build/projects/gmake-android-arm64/bx.make"
Generating ".build/projects/gmake-android-arm64/bin2c.make"
Generating ".build/projects/gmake-android-arm64/lemon.make"
Generating ".build/projects/gmake-android-arm64/bx.test.make"
Generating ".build/projects/gmake-android-arm64/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=android-x86     gmake
Set ANDROID_NDK_CLANG, ANDROID_NDK_X86, and ANDROID_NDK_ROOT environment variables.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-android-x86/Makefile"
Generating ".build/projects/gmake-android-x86/bx.make"
Generating ".build/projects/gmake-android-x86/bin2c.make"
Generating ".build/projects/gmake-android-x86/lemon.make"
Generating ".build/projects/gmake-android-x86/bx.test.make"
Generating ".build/projects/gmake-android-x86/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=mingw-gcc       gmake
Set MINGW environment variable.
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-mingw-gcc/Makefile"
Generating ".build/projects/gmake-mingw-gcc/bx.make"
Generating ".build/projects/gmake-mingw-gcc/bin2c.make"
Generating ".build/projects/gmake-mingw-gcc/lemon.make"
Generating ".build/projects/gmake-mingw-gcc/bx.test.make"
Generating ".build/projects/gmake-mingw-gcc/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=linux-gcc       gmake
Building configurations...
Running action 'gmake'...
Generating ".build/projects/gmake-linux/Makefile"
Generating ".build/projects/gmake-linux/bx.make"
Generating ".build/projects/gmake-linux/bin2c.make"
Generating ".build/projects/gmake-linux/lemon.make"
Generating ".build/projects/gmake-linux/bx.test.make"
Generating ".build/projects/gmake-linux/bx.bench.make"
Done. Generated 6/6 projects.
../bx/tools/bin/darwin/genie --gcc=haiku           gmake
Error: invalid value 'haiku' for option 'gcc'
stack traceback:
        [C]: in function 'error'
        [string "_WORKING_DIR        = os.getcwd()..."]:63: in function '_premake_main'
make: *** [all] Error 1

Edit: Just remembered that I wasn't sure about where in the file I should put the change recommended below... Is there a particular location they need to go or can they just be appended to the bottom of the makefile?

@GuiHva bx and bimg does not have those targets specified. You will need to add them yourself:
Add the following to lib/bx/makefile and lib/bimg/makefile:
.build/projects/gmake-osx-arm64:
	$(GENIE) --gcc=osx-arm64 gmake
osx-arm64-debug: .build/projects/gmake-osx-arm64
	make -C .build/projects/gmake-osx-arm64 config=debug
osx-arm64-release: .build/projects/gmake-osx-arm64
	make -C .build/projects/gmake-osx-arm64 config=release
osx-arm64: osx-arm64-debug osx-arm64-release

yeah, i have occuerred with this error, you just follow my step, it will work

@Techman55 https://github.com/jdah/minecraft-again/issues/2#issuecomment-1014996349 + https://github.com/jdah/minecraft-again/issues/2#issuecomment-1014998852

Oh... I did that at first, and then I discarded all my changes to try and redo everything (in case I typed in something wrong)... must have forgotten that....
Just did those two steps and now it's building for longer than it ever has now so I'll share the final result. Thanks for the help!

After a lot of waiting and figuring out that I didn't have cmake installed.......... the executable failed to launch with this error
:(

You still didn't run smoothly? Compiled successfully after i install cmake with brew install cmake. run ./bin/game

I got it! Idk what I did wrong before but it works now. I think I ran the executable outside of the source files...
Thanks for all the help!

heres a bugfix dont use a mac

I followed all the steps above, and I get another linking error:
==== Building bin2c (debug) ====
Creating ../../osx-arm64/obj/Debug/bin2c
Creating ../../osx-arm64/obj/Debug/bin2c/tools/bin2c
bin2c.cpp
Linking bin2c
Undefined symbols for architecture arm64:
  "operator delete(void*)", referenced from:
      Bin2cWriter::~Bin2cWriter() in bin2c.o
      bx::MemoryBlock::~MemoryBlock() in bin2c.o
      bx::MemoryWriter::~MemoryWriter() in bin2c.o
      bx::FileReader::~FileReader() in libbxDebug.a(file.o)
      bx::FileWriter::~FileWriter() in libbxDebug.a(file.o)
      bx::DirectoryReader::~DirectoryReader() in libbxDebug.a(file.o)
      bx::FileReaderImpl::~FileReaderImpl() in libbxDebug.a(file.o)
      ...
  "___cxa_guard_acquire", referenced from:
      bx::getStdIn() in libbxDebug.a(file.o)
      bx::getStdOut() in libbxDebug.a(file.o)
      bx::getStdErr() in libbxDebug.a(file.o)
      bx::getNullOut() in libbxDebug.a(file.o)
      bx::getDebugOut() in libbxDebug.a(debug.o)
      bx::getTempPath(char*, unsigned int*) in libbxDebug.a(filepath.o)
  "___cxa_guard_release", referenced from:
      bx::getStdIn() in libbxDebug.a(file.o)
      bx::getStdOut() in libbxDebug.a(file.o)
      bx::getStdErr() in libbxDebug.a(file.o)
      bx::getNullOut() in libbxDebug.a(file.o)
      bx::getDebugOut() in libbxDebug.a(debug.o)
      bx::getTempPath(char*, unsigned int*) in libbxDebug.a(filepath.o)
  "___cxa_pure_virtual", referenced from:
      vtable for bx::WriterI in bin2c.o
      vtable for bx::MemoryBlockI in bin2c.o
      vtable for bx::WriterSeekerI in bin2c.o
      vtable for bx::SeekerI in bin2c.o
      vtable for bx::FileReaderI in libbxDebug.a(file.o)
      vtable for bx::ReaderSeekerI in libbxDebug.a(file.o)
      vtable for bx::SeekerI in libbxDebug.a(file.o)
      ...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [../../osx-arm64/bin/bin2cDebug] Error 1
make[2]: *** [bin2c] Error 2
make[1]: *** [osx-arm64-debug] Error 2
make: *** [libs] Error 2

Since I changed all the appropiate files, idk what I have done wrong :(
My config is:
clang++ -v:
  Using built-in specs.
  COLLECT_GCC=g++-12
  COLLECT_LTO_WRAPPER=/opt/homebrew/Cellar/gcc/12.2.0/bin/../libexec/gcc/aarch64-apple-darwin22/12/lto-wrapper
  Target: aarch64-apple-darwin22
  Configured with: ../configure --prefix=/opt/homebrew/opt/gcc --libdir=/opt/homebrew/opt/gcc/lib/gcc/current --disable-nls --enable-checking=release --with-gcc-major-version-only --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-12 --with-gmp=/opt/homebrew/opt/gmp --with-mpfr=/opt/homebrew/opt/mpfr --with-mpc=/opt/homebrew/opt/libmpc --with-isl=/opt/homebrew/opt/isl --with-zstd=/opt/homebrew/opt/zstd --with-pkgversion='Homebrew GCC 12.2.0' --with-bugurl=https://github.com/Homebrew/homebrew-core/issues --with-system-zlib --build=aarch64-apple-darwin22 --with-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
  Thread model: posix
  Supported LTO compression algorithms: zlib zstd
  gcc version 12.2.0 (Homebrew GCC 12.2.0)
xcodebuild -version:
  Xcode 14.2
  Build version 14C18

I'm using macOS Ventura 13.1.

Make sure to clean your build files (rm -rf lib/bx/.build), or use make clean inside the bx project folder.

mkdir -p ./bin
export LD_PATH="-framework QuartzCore -framework Cocoa -framework Carbon -framework Metal -framework CoreFoundation -framework IOKit"
cd lib/bx && make osx-arm64
make[1]: *** No rule to make target `osx-arm64'.  Stop.
make: *** [libs] Error 2
Did everything, what am I missing?  ^ error


Update isNumberGeographical to return true for geographical mobile numbers

E.g. in Brazil and Indonesia. See #989.

Sent https://github.com/googlei18n/libphonenumber/pull/1055

Fixed in master, will be in the release.

Thank you very much! :)

You're welcome :)


Price-feeder: price-per-provider endpoint

Summary
Validators have telemetry and an endpoint showing the latest prices which they're voting on, but they should also have a price-per-provider endpoint which they can query to make it easier to discern if certain providers aren't showing up consistently.

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged
[ ] Contributor assigned/self-assigned

Shouldn't we change a language and instead of saying "latest price they are voting on" -> "latest price they provide" (or supply).

Why validators should get price info from other validators? This way they can cheat and copy prices rather than include their own one.

@robert-zaremba this is an endpoint on the price feeder tool for validators to help debug their own instance of the price feeder, not for validators to get a free ride - should not be accessible to other validators


VIEW_HOUSES state not aligned with buying a house

When a player advances in round 1 to buying a house, the state of the facilitator (SHOW_HOUSES) is behind the state of the player (VIEW_BUY_HOUSE). This indicates that the player is 'ahead' of the facilitator and the rest of the group, and flags an error message in the game.

The solution is to change the facilitator state of SHOW_HOUSES to SHOW_HOUSES_SELL and to change the state of SELLING_FINISHED to SHOW_HOUSES_BUY.

State chart and class RoundState have been adapted.


Taskbar icon problem

VSCode Version: Code 1.18.0 (dcee2202709a4f223185514b9275aa4229841aa7, 2017-11-08T21:19:36.079Z)
OS Version: Windows_NT ia32 10.0.16299
Extensions:

Extension
Author (truncated)
Version

path-intellisense
chr
1.4.2

tslint
eg2
1.0.14

Angular2
joh
2.10.0

Congratulations on the update. Thanks for changing the icon back to blue.
However, when we pin the icon to the taskbar, it still remains orange.
I have tried by right-clicking the blue icon and selecting 'Pin To Taskbar' and dragging and dropping VSC from Start menu to taskbar. Icon remains orange. This is also the case in Windows context menu when we right click inside a folder to select VS Code.
Steps to Reproduce:

Pin VSC from Start menu to taskbar.

Reproduces without extensions: Yes

Have you logged out or rebooted since the update?
Alternatively, you can manually refresh the icon cache:
https://superuser.com/questions/499078/refresh-icon-cache-without-rebooting

I had the same issue at first, but it was solved by closing all instances of VS Code and reopening it.

This always happens, it just needs to be cleared from cache by the system eventually.
Btw, I'm sad that icon is once again blue. I have a real blue icon fatigue, so many icons are this boring color. Just in my current Alt-Tab:

Outlook
Messages
Skype
Finder
SourceTree
Word
Enpass
AnyList

etc. Having a different color was a nice change of pace, and it's a bit bizarre that people were so opposed to it.

@AlexPasternak or, maybe you can look at it this way, that you have an instant attraction of apps with blue icons. 😄
In my case, orange looked a little weird, not bad, just something unconventional (which can be good).
Anyways, this can be closed. Restarting fixed the issue.


Rate should be int/int not float

Currently RationalTime is represented as a float value and a float rate. Unfortunately there are cases where floating point arithmetic leads to precision issues, rounding and undesirable drift.
Some other systems represent rate as an int/int rational number. For example 30000/1001 vs 29.97.
We would like to experiment with this alternate representation of rate for OTIO. In order to do so, we propose two concrete steps:

Write a unit test that clearly demonstrates a flaw in using a floating point rate.
Create two different time classes (perhaps RationalTime and FractionalTime?) that can be used interchangeably in OTIO, but with different representations of rate.

By doing this we can ensure that we won't break anything by making this switch and we can clearly explain to everyone (ourselves included) the difference between the two and the reasons for choosing one over the other.
Comments?

TIL that the Python % operator and the C % operator are not the same thing. So I withdraw my flag of a bug in the timecode conversion code.
Creating a unit test to expose issues sounds like a great first step.

Here is some excellent background reading.
https://randomascii.wordpress.com/2012/02/13/dont-store-that-in-a-float/
The conclusion is that double precision will store a time value with constant precision at the microsecond level for 136 years.
So what's left is to work out is at what frame does precision break down for what frame rate. Since NTSC rates are irrational (30000/1001 == 29.9700299700299700...) several values should be checked beyond the usual integral multiples of 24, 25, and 30 - at least 25000/1001, 30000/1001, 60000/1001, and 120000/1001.
Since float operations potentially lose a little significance after every operation, the next question is: at the point precision breaks down, how much significance is lost for every operation?
https://benjaminjurke.com/content/articles/2015/loss-of-significance-in-floating-point-computations/
It might turn out that double is good enough, and it's kind of feeling like it, but at least we would know definitively.

Float and int aren't the only options. The time implementation I'm working on (Slowly Sorry!) internally stores values as a 64 bit integer and a 8 bit comma positioning value. This means i can do mixing of 24/30/29.97 FPS with perfect precision, and no loss. I think its in my Github branch (Ive been busy with other stuff and learning Python so things have slowed down)
I still thing the time description we have is the right one, we just need to not use floats. This requires a proper implementation of the json parsing that doesn't convert it in to floats. It makes sense to me that you can put down the frame rate as you understand it and have the implementation do the right thing, even if it means a lot of work on the inside of that implementation.

See also: https://nomore2398.com for background on drop frame timecode.

This came up in discussion again recently - specifically around the question of how much error is present from using a double-precision float instead of int/int for rate.
Could someone check my rough calculation here:
rate = 30000./1001.
seconds = 30 * rate
frames = seconds / rate
frames # => 30.000000000000004 does not equal 30.
error = frames - 30
error * 60*60*24*365*100000 # => 0.0112...

So if you had media with a running time of 100,000 years it would be off by 0.01 frames.

@jminor your calculation is ballpark in line with my microsecond at 100 years seat of the pants earlier in the thread. I am reading your analysis as a vote against the need for int/int.
The anecdotes and evidence I have gathered basically boil down to variations of an argument along the lines of "I had a timeline over a day long, and a couple of hours into the second day, a frame was lost, when using a double based time representation". This isn't because of insufficient resolution, it's because of frame snapping, and heuristics around frame snapping.
The int/int float/float argument always comes down to the fact that one must, in the end, snap a time to a frame for display. Snapping a floating point value to a frame is an irreversible operation, which means you can't go from a frame to the source time ever again. The argument for int/int reflects the idea that assuming reasonable quantization, (e.g. from a 24 fps timeline back to a 24 fps source, or to a 30fps source via a pull up), the snapping heuristic is avoided and therefore the operation is reversible, because an algorithm is known to do it. This argument does not hold up in a modern context, because the mix of framerates is no longer as simple as it was when it was dictated by projection and broadcast standards. Chris' flicks proposal is partially meant to be paradisiacal to show the absurdity of an integer base. The argument that the existence of pull up and pull down and drop frame and so on is a good solution for reversibility doesn't hold water in the face of modern arbitrary frame rates coming from any number of advanced imaging technologies.
I propose that the current representation is actually technically sufficient to our needs, and that the missing piece is that we have not specified how temporal sampling and reconstruction works such that given a temporally heterogeneous set of composed clips (clips superimposed on a timeline whose rates all differ) how to precisely explain which sample index (image number in a image sequence, frame number in a mov) corresponds a given temporal coordinate on the timeline.
int/int still comes up as an opinion in our Slack channel. Why don't we add an agenda item for this issue to the next TSC meeting, with the intent of opening the floor to anyone who's got a compelling reason for int/int, and recording any discussion here. If a compelling int/int argument does not arise, we could then proceed to close this issue with a note on the decision, as  no compelling argument for int/int has been posted on this thread in four years.

I happened to run across the WebCodec W3C standard which, interestingly, uses unsigned long long (microseconds) for durations, and doubles for framerate: https://w3c.github.io/webcodecs/#dom-videoencoderconfig-framerate

It makes sense in the context of the codec's practical calculations, although I am surprised :)
framerate, of type [double](https://webidl.spec.whatwg.org/#idl-double)

The expected frame rate in frames per second, if known. This value, along with the frame [timestamp](https://w3c.github.io/webcodecs/#dom-videoframe-timestamp), should be used by the video encoder to calculate the optimal byte length for each encoded frame. Additionally, the value should be considered a target deadline for outputting encoding chunks when [latencyMode](https://w3c.github.io/webcodecs/#dom-videoencoderconfig-latencymode) is set to [realtime](https://w3c.github.io/webcodecs/#dom-latencymode-realtime).

Oh I ran into this Int vs Float thing in the AVFoundation conversion code, and would absolutely 100% get behind an Int/Int representation to avoid floating point errors.
A hardy +1 from me please!

FWIW, here are some unit tests I wrote which attempt to resolve some similar issues on the CoreMedia vs OTIO conversions (if its remotely helpful)
https://github.com/Synopsis/OpenTimelineIO-AVFoundation/tree/main/Tests/OpenTimelineIO-AVFoundationTests


OBS builds of dev branch are not being triggered by travis

Pushes done through gerrithub to the dev branch are failing to authenticate with my OBS instance:
$ ./.travis_obs.sh
A    home:cmcantalupo:geopm-dev
A    home:cmcantalupo:geopm-dev/geopm-dev
A    home:cmcantalupo:geopm-dev/geopm-dev/geopm.spec
A    home:cmcantalupo:geopm-dev/geopm-dev/geopm.tar.gz
At revision 491.
Server returned an error: HTTP Error 403: Forbidden
no permission to modify package geopm-dev in project home:cmcantalupo:geopm-dev
Sending    geopm.spec
Sending    geopm.tar.gz
Transmitting file data Failed to push to OpenSUSE builds.

Something changed about the way the secure environment variables are decoded when the push comes from gerrithub.  Note that pushes that I make to my fork are able to upload to OBS.

https://github.com/geopm/geopm/commit/054fe1c4f3c64060ae025c7be34ed971bdaf0e0a


Rename webhooks errors exported funcs

Q
A

Bug fix?
no

New feature?
no

API breaks?
yes

Deprecations?
no

Related tickets

License
Apache 2.0

What's in this PR?

This PR renames the exported error checking functions from pkg webhooks to names that include the IsAdmission... prefix, rather than Is..., to hopefully make it clearer that they relate to admission webhooks errors and results.
The change is initially done in 2 commits :

the non-breaking renames -- those functions were added very recently in https://github.com/banzaicloud/koperator/pull/920 (after the v0.22.0 release)
a breaking change  --  to keep the naming scheme consistent in the package, the IsInvalidReplicationFactor function (which already exists in release v0.22.0) is renamed following the same pattern

Why?

More clarity and consistency in the naming scheme in the "webhooks" package
API-breaking markers ?
I am not sure what markers I need to use to correctly flag the breaking change in API, other than the table at the top of the PR description.
Still one question about renaming ...
Should the IsErrorDuringValidation function follow the same pattern since it includes the word validation already ... ? (aka :  IsAdmissionErrorDuringValidation)
Currently, I favour renaming throughout and it is done for this one too.

Should the IsErrorDuringValidation function follow the same pattern since it includes the word validation already ... ? (aka : IsAdmissionErrorDuringValidation)

I vote yes


[BUG] Macros are not translating.

🔵 Describe the bug:
While Sequences are being translated, Macros are not being translated to an ID but rather are being stored as plain text.  The Spell Cache is also not being populated.

Noticed fixing #1480


[Help needed] Question related to bottom sheet navigation as destination

HI @raamcosta
This is not a bug. But needed one help.
I am currently using destination bottom sheet.
I have a usecase where bottom sheet should not get dismissed if user taps outside the bottom sheet but as you are also aware that currently its not supported in accompanist library itself.
I wanted to understand how the stack works in this case.
Initially the root destination was A.
From A I navigated to bottom sheet destination B.
When user taps outside the bottom sheet area, does B gets popped out of stack ?
Also is there a way to get callback when user taps the outside area or basically when B is popped from stack ?

@raamcosta
Can you please help here

Hi 👋
sorry for delayed response.

When user taps outside the bottom sheet area, does B gets popped out of stack ?

Yes, exactly. You can find handy functions in the sample and playground folder of this repo where we log the whole back stack whenever it changes, it may be helpful for you in the future to check these things.

Also is there a way to get callback when user taps the outside area or basically when B is popped from stack ?

You can add a lifecycle callback to the destination itself and see when that goes to onStop for example.
Or you can use the NavController.currentDestinationAsState, or NavController.addDestinationChangeListener (names might be slightly off, I can recheck later).
hope this helps!


Add a getter for the 'version constraints' property on ExternalDependency

In general, we should provide getters for all data structures in the model. The version constraints structure of a dependency declaration is such a structure, however there is no getter for it.
Expected Behavior
A getter is present for this structure.
Current Behavior
No getter is present.

To be clear, the getter is defined in ModuleVersionSelector, that ExternalDependency extends. So it's more about overloading the return type to MutableVersionConstraint.

This has been added


Increase logging buffer size to 256kb

DataflowWorkerLoggingHandler writes logs using a BufferedOutputStream, which by default holds 8192 bytes.
Having a buffer with that size means that large logs may be split up in multiple flushes to disk -- and that can cause Cloud Logging to have partial writes when reading files, potentially causing parse problems due to invalid/incomplete JSON.
This change increases the buffer size from 8kb to match Cloud Logging's limit of 256 kb, so we make sure that the buffer can hold any valid entry.
In general, the latency won't be affected, as after every call to publish, flush is guaranteed.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] ~Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.~
[ ] ~Update CHANGES.md with noteworthy changes.~
[x] ~If this contribution is large, please file an Apache Individual Contributor License Agreement.~

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Java PreCommit

Thanks for the catch! From the linked google cloud documentation it says "This approximate limit is based on internal data sizes, not the actual REST API request size." As this is an "approximate", do we want some redundancy (like set to 250 kB)? Or have you able to test if 256 kB size works with Dataflow?

Thanks @Abacn -- it's not actually going to change the log entry size or incur new limits, it's just going to write in less flushes to disk. Dataflow today runs a scanner agent from time to time to send logs, and with a large enough buffer, there's less chance that it will read "intermediary" logs.
This will reduce the chance that logs will be chopped. I did test this (gist) and the occurrences reduced considerably.

The original problem is that log view from dataflow ui get truncated when it is longer than the buffer

Precisely, thanks @Abacn!


Deeplink - User is not redirected to public room if the app is already open

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
Issue reported by: Applause -Internal team
Slack conversation: Found while executing tests for https://expensify.slack.com/archives/C9YU7BX5M/p1708359665549809
Action Performed:

Open the app and Sign out if needed
Deep link to this public room from another app like Gmail or slack: https://staging.new.expensify.com/r/6776919265133947

Expected Result:
Navigating to the deeplink should work and take the user to the public room.
Actual Result:
If the app is already open, the user is navigated to the login screen instead of the room.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/44479856/649e4a65-5a6d-4814-a513-b9abb243c9f7
View all open jobs on GitHub

@isagoico thinks this might be related to https://github.com/Expensify/App/issues/36812
Adding to #vip-vsb project.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Can't deep link to public room after sign-out from the app.
What is the root cause of that problem?
When we deep link to a report, it will check whether authenticated status is false.
https://github.com/Expensify/App/blob/d33bf6e0454fae9550422da28b0407f01b23c969/src/libs/actions/Report.ts#L2204-L2206
The authenticated status is passed from this useEffect with an empty deps which means the value is never updated.
https://github.com/Expensify/App/blob/d33bf6e0454fae9550422da28b0407f01b23c969/src/Expensify.js#L200-L212
So, when we sign out, the authenticated status is still true, thus we can't deep link to a public room.
What changes do you think we should make in order to solve the problem?

We should put the linking listener on a new useEffect with authenticated status as the deps and reregister the listener.
useEffect(() => {
    const linking = Linking.addEventListener('url', (state) => {
        Report.openReportFromDeepLink(state.url, isAuthenticated);
    });
    return linking.remove;
}, [isAuthenticated])

What alternative solutions did you explore? (Optional)
Create a ref for isAuthenticated so we don't need to re-register the listener.

Ugh originalexternal label automation failed, so no C+ was assigned. @sobitneupane sending your way for C+ review on proposals so far

@sobitneupane bump for review ^^

Thanks for the proposal everyone.
I like the proposal from @dukenv0307 . We can get the latest data for isAuthenticated from Session library and we don't need to re-register the event listener.
🎀👀🎀 C+ reviewed

https://expensify.slack.com/archives/C01GTK53T8Q/p1709567026115789

Regression Test Proposal

Open the app and Sign out if needed
Click on the deep link to any public room from another app like Gmail or slack
Verify that navigating to the deep link works and user is redirect to the public room in Expensify app.

Do we agree 👍 or 👎

Payment Summary:
C+ @sobitneupane $500 please request in newdot
Contributor: @dukenv0307 $500 payment issued in Upwork

$500 approved for @sobitneupane based on summary.


Does LDAP plugin work?

Hi thanks for adding LDAP authenication, I am having some difficulty getting it to work.
first i think in your documentation below hide_port should be ldap_port?
$ curl -X POST http://kong:8001/apis/{api}/plugins
--data "name=ldap-auth"
--data "config.hide_credentials=true"
--data "config.ldap_host=ldap.example.com"
--data "config.hide_port=398"
--data "config.base_dn=dc=example,dc=com"
--data "config.attribute=cn"
--data "config.cache_ttl=60"
second I cant get this to work
Usage
In order to authenticate the user, client must set credentials in Proxy-Authorization or Authorization header in following format
credentials := [ldap | LDAP] base64(username:password)
do both username and password have to be encoded by for utility like https://www.base64encode.org/? I have tried i cant get it to work.

Yes it should be  ldap_port, we will update the document soon.
You can use any base64 encoding utility based on the language you coding.  Following is example from the integration test for LDAP
https://github.com/Mashape/kong/blob/master/spec/plugins/ldap-auth/access_spec.lua#L74
What error you getting?

@harryparmar were you able use the LDAP plugin?

I will give it try on Monday and get back to you.

@shashiranjan84 I just get message
{
"message": "Unauthorized"
}
My header looks like this
GET /SOME_API?TEST_PARAM=5302852545&CONTRACT=1234 HTTP/1.1
HOST: ZEUSUSNESP:8000
credentials: dGVzdDp0ZXN0
My LDAP settings are correct as I can use third party tool like LDAP Browser

Are you setting Authorization header?
in your it should be something like this
Authorization: LDAP dGVzdDp0ZXN0

On May 24, 2016, at 10:31 AM, Harmohan Parmar<EMAIL_ADDRESS>wrote:
credentials: dGVzdDp0ZXN0

@shashiranjan84 changing my header to look like this
GET /SOME_API?TEST_PARAM=5302852545&CONTRACT=1234 HTTP/1.1
HOST: ZEUSUSNESP:8000
Authorization: LDAP dGVzdDp0ZXN0
Now I receive this message-
{
"message": "Invalid authentication credentials"
}

Check the log for any msg from LDAP server. Also please post here your Plugin config.
Also you follow this link https://github.com/Mashape/kong/blob/master/spec/plugins/ldap-auth/access_spec.lua#L75 https://github.com/Mashape/kong/blob/master/spec/plugins/ldap-auth/access_spec.lua#L75
as example.

On May 24, 2016, at 11:33 AM, Harmohan Parmar<EMAIL_ADDRESS>wrote:
dGVzdDp0ZXN0

error.log
The supplied credential is invalid.
Details: 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1^@,
Ldap plugin config, this is what i used below to set it up-
curl -X POST http://xxxx:8001/apis/TEST_API_3/plugins
--data "name=ldap-auth"
--data "config.hide_credentials=true"
--data "config.ldap_host=<IP_ADDRESS>"
--data "config.ldap_port=389"
--data "config.base_dn=dc=test-test,dc=com"
--data "config.attribute=cn"
--data "config.cache_ttl=60"

I am not sure if these are needed
--data "config.attribute=cn"
--data "config.cache_ttl=60"
but your plugin does not install without them

config.attribute is required field. So basically if we authenticating bob here and its DN on ldap server is cn=bob,dc=example,dc=com
than config.base_dn would be config.base_dn=dc=example,dc=com and config.attribute would be config.attribute=cn.
Let say bob’s password is password, so you request headers should have authentication header set as
Authentication: LDAP Ym9iOnBhc3N3b3Jk

On May 24, 2016, at 1:52 PM, Harmohan Parmar<EMAIL_ADDRESS>wrote:
config.attribute=cn

I still got same error as before triggered on line 76 of
https://github.com/Mashape/kong/blob/master/kong/plugins/ldap-auth/access.lua

in distinguisedName on AD i have it like this
distinguishedName: CN=TEST TEST,OU=Users,OU=New York,DC=test-test,DC=com
should i change plugin setting to include OU=Users,OU=New York?

@shashiranjan84
i changed my setting to account for OU=Users, OU=New York
{
api_id: "d8d176b7-c0cf-4fe9-a6f6-2df452bc0be2",
id: "2c23e3fa-757b-41a2-9e8f-dc4070482d35",
created_at:<PHONE_NUMBER>000,
enabled: true,
name: "ldap-auth",
config: {
base_dn: "OU=Users,OU=New York,DC=springer-sbm,DC=com",
cache_ttl: 60,
timeout: 10000,
start_tls: false,
hide_credentials: true,
ldap_host: "192.168.xxx.xx",
verify_ldap_host: false,
attribute: "cn",
keepalive: 60000,
ldap_port: 389
}
}
I still get
{
"message": "Invalid authentication credentials"
}

What you setting in authentication header? Try ldapsearch command from bash to make sure you using correct DN. You may need to install it.

@shashiranjan84
I installed ldapsearch and ran command from this page http://www.agix.com.au/ldapsearch-active-directory/
without problem
I also foundout my username format has to be like<EMAIL_ADDRESS>using ldap browser 4.5 and then using it successfuly on ldapsearch
But I am still getting same error from Kong Plugin

Please paste the cammand you ran and the authorization header value here.
On May 25, 2016 8:35 AM, "Harmohan Parmar"<EMAIL_ADDRESS>wrote:

@shashiranjan84 https://github.com/shashiranjan84
I installed ldapsearch and ran command from this page
http://www.agix.com.au/ldapsearch-active-directory/
without problem
I also foundout my username format has to be like<EMAIL_ADDRESS>using ldap browser 4.5 and then using it successfuly on ldapsearch
But I am still getting same error from Kong Plugin
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/Mashape/kong/issues/1231#issuecomment-221613267

ldapsearch
-x -h 192.168.xxx.xx
-D<EMAIL_ADDRESS>-W
-b "dc=test-test,dc=com"
-s sub "(cn=*)" cn mail sn
I got password prompt and I entered it and saw results
My authorization header is
Authorization: LDAP dGVzdEB0ZXN0LXRlc3QuY29tOnBhc3N3b3Jk

What attribute defines test, is it uid, cn, sn ...? Is it possible for you
paste AD hierarchy for test here? You can use Apache Directory Studio.
What error do you see Kong log?
@shashiranjan84 https://github.com/shashiranjan84
ldapsearch
-x -h 192.168.xxx.xx
-D<EMAIL_ADDRESS>-W
-b "dc=test-test,dc=com"
-s sub "(cn=*)" cn mail sn
I got password prompt and I entered it and saw results
My authorization header is
Authorization: LDAP dGVzdEB0ZXN0LXRlc3QuY29tOnBhc3N3b3Jk
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/Mashape/kong/issues/1231#issuecomment-221619231

Is there way to PM you or email it? I am just replacing my user with Test when i am posting here..but i will send you real data in PM/email.

are you on Gitter?
https://gitter.im/Mashape/kong

@harryparmar where you able to use the plugin? I know ppl are able to use the plugin successfully as it is now. Please reopen the ticket if you have more questions.

@shashiranjan84 Is there a chance this method will only work on Active Directory services in anonymous bind is enabled? If not that might explain why some people can't get it to work (me included).

Plugin(LDAP client) does not care if anonymous bind is enabled or not as it never make anonymous bind request. It just encode a bind request using DN (base DN + attribute= ) and Password and make a simple bind authentication call

Could you please explain how to use a bindDN  (ldapsearch -D ) ?

I have the same problem, in our case the attribute used is "sAMAccountName"

@fabiorphp  follow #1821 for debugging.

Is there an option to configure LDAP Connection password, something like,
{
"name" : "ldap-auth",
"config.hide_credentials" : "true",
"config.ldap_host" : "localhost",
"config.ldap_port" : "398",
"config.base_dn" : "cn=root",
"config.attribute" : "cn",
"config.cache_ttl" : "60",
"config.ldap_password" : "password"
}

2017/01/31 11:41:58 [error] 82#0: *2231 [lua] access.lua:42: ldap_authenticate(): [ldap-auth] failed to connect to localhost:398: connection refused, client: 192.xxx.xxx.xxx, server: kong, request: "GET / HTTP/1.1", host: "192.xxx.xxx.xxx:pppp"

I was able to get this to work by adding ou=Users,ou=New York to Base DN, your settings will differ based on your org and ldap setup.
Also to login I use my first name and last name instead of username.

Sorry for commenting on an issue that his been closed for so long, but I didn't want to start a new thread because this is so high in the search results.
I'm running into the same problem when attempting to integrate Kong with active directory authentication.  It works, but requires the CN, which is a bit unwieldy.  Is there any way we could instead use the sAMAccountName?

@jhdehart  you can configure that using config.attribute but current implementation only authenticate user with fully qualified DN, there is a PR open make it more flexible https://github.com/Kong/kong/pull/3093 .

Great, thanks for the update!

Does anyone have any experience of not putting the ldap_password value in plain text?
Trying to see if there is a way around this.

I still had {"message":"Invalid authentication credentials"} error after all that is suggested here and my problem was wrong encoding (my personal encode alias added new line). Hope this will save someone's lose of hair and delay sanity decline for a day.

I have the same problem, my ldap setup has bind_DN prior to user auth, help, Where I can set the bind_dn credentials for non anonymous user connection?

I have the same problem, my ldap setup has bind_DN prior to user auth, help, Where I can set the bind_dn credentials for non anonymous user connection?

I still had {"message":"Invalid authentication credentials"} error after all that is suggested here and my problem was wrong encoding (my personal encode alias added new line).  I have the exact same issue and I started to become superstitious. Thanks a lot!


how to generate src_backend_*.c files from flex&bison source file

Hello, is there a guide or script to generate all those src_backend_*.c files from flex&bison source code like scan.l, grammar.y?
thanks!

@cjbd Those files are automatically extracted from the Postgres source, via libclang. See scripts/extract_source.rb and extract_source Makefile target.
Out of curiosity, what's the use case where you're trying to generate these files?

@lfittl thanks a lot! i just started learning sql parsing, i thought all parser code was supposed to be generated by flex&bison