Even though there are no errors in the frontend or backend, something in my Angular app is still preventing the pages from rendering

I am working on an Angular application, but currently all the pages are showing up as blank. There are no errors reported in the frontend console or in the backend, and the API calls are working correctly. I suspect that something in the app’s structure or routing configuration is blocking the rendering of the components. I have checked the modules and components, but the issue persists

I have tried checking all my Angular modules, components, and routing configuration. I also verified that there are no errors in the console and that all backend APIs are working correctly. I expected the pages to render normally, with each route displaying its corresponding component, but instead the application shows only a blank page.

How can I run JavaScript code in VS Code?

I’m learning JavaScript and I’m using Visual Studio Code as my editor.

I wrote a simple file, script.js:

console.log("Hello, world!");

But when I try to run it inside VS Code, nothing happens.

  • Do I need to install something extra?

  • Should I run it in the terminal, or is there a built-in way in VS Code to execute JavaScript files?

  • What’s the simplest way to run and see the output of my JS code in VS Code?

I’m on Windows 11.

How do services like Otter.ai programmatically join Google Meet without browser automation?

Context & Current Situation

We’re building an educational analytics platform and need to access individual participant video streams from Google Meet sessions. After hitting walls with official APIs (Meet API, Add-ons SDK), we’re exploring bot-based approaches.

The Documentation & Visibility Problem

The core issue: There’s zero official documentation on how to build Google Meet bots, yet companies like Otter.ai, Read.ai, and numerous others have seamless implementations.

What We’re Struggling With:
Complete lack of official guidance – No Google documentation on bot development for Meet

Technical implementation mysteries – How are these companies actually joining meetings programmatically?

Reliability vs. hackiness – Our Puppeteer attempts are fragile and break frequently

Detection avoidance – What techniques prevent Google from blocking bot access?

Core Questions:

How do established companies achieve rock-solid reliability? Their bots join seamlessly every time

What’s the actual technical architecture? Are they using undocumented APIs, special browser automation, or something else entirely?

I would appreciate real technical insights from developers who’ve solved this. Anyone with actual implementation experience or insights into how this ecosystem really works?

Is this a valid JavaScript approach for sorting large arrays of unique integers efficiently?

I’m experimenting with sorting large arrays of unique integers in JavaScript and came up with a simple approach. I’m curious if it’s a recognized pattern or if there are potential pitfalls I might be missing.

Here’s the code I’m using:

function sortArr(arr) {
    const sorted = [];
    arr.forEach(el => sorted[el] = el);
    return sorted.filter(el => el);
}

function getRandomArray(length, max = length * 10) {
    const set = new Set();
    while (set.size < length) {
        set.add(Math.floor(Math.random() * max) + 1);
    }
    return [...set];
}

const arr = getRandomArray(100000);
console.log(sortArr(arr));

How it works:

Each number from the array is placed at the index equal to its value in a new array.

Then they are filtered out of empty slots to get the sorted array.

Questions:

  1. Are there potential performance or memory issues with this approach in JavaScript, especially with large arrays or large maximum values?

  2. Would this be practical for production code, or is it more of a coding experiment?

Any feedback or references to similar approaches would be appreciated!

I was trying to sort a large array of unique integers efficiently in JavaScript. I wanted to see if placing each element at its index in a new array and then filtering empty slots would produce a correctly sorted array, and whether this approach is efficient compared to built-in sort or counting sort.
I expected the code to return a sorted array in ascending order. I also expected it to run relatively fast for large arrays and use a reasonable amount of memory.

Keeping the current chosen option from marker passed from Django

I’m currently trying to create a website/webapp for my portfolio’s bank using Django 5.2/HTML/CSS/JS. I got stuck on one small part of creating bank statement subpage.
The issue I have encountered is: When user is setting how he wants his statement to be ordered the option of both select tags is reverting back to it’s default state.

Please keep in mind I’m currently focusing on learning Django as part of my Python learning plan and I’m practically a noob in JS. I do however understand a lot since I’ve done basics of Python(I passed PCEP and PCAP) and apart from semanthic changes most of the rules seems to be similar in OOP.

Here is my current code from statement.html:

{% extends "bank_accounts.html" %}
{% block title %} Statement {% endblock %}
<script type="text/javascript">

function change_order(o, o2) {
    document.getElementById(o).selected=True;
    document.getElementById(o2).selected=True;
}
</script>
{% block main %}
<p>{{ order }} {{ order2 }}</p>
<h1>STATEMENT</h1>
<h3> Below you can see statement from current month for your account({{ acc }}):</h3>
<form method="POST" onload="change_order('{{ order }}', '{{ order2 }}');">{% csrf_token %}Sort by:
<select name="order-by" id="order-by">
    <option id="date" value="date">Date</option>
    <option id="from" value="from">From</option>
    <option id="to" value="to">To</option>
    <option id="type" value="type">Type</option>
    <option id="sum" value="sum">Sum</option>

</select>

<select name="order-by2" id="order-by2">

    <option id="asc" value="asc">Ascending</option>
    <option id="desc" value="desc">Descending</option>

</select>
<table id="state-tb">
<tr>
    <th class="state-t"> Date and time </th>
    <th class="state-t"> From </th>
    <th class="state-t"> To </th>
    <th class="state-t"> Type </th>
    <th class="state-t"> Sum </th>
    <th class="state-t"> Reference </th>
    <th class="state-t"> Saldo after transaction </th>
</tr>

{% for x in history %}
    {% if x.type == "IN" %}
    <tr class="in">
    <td class="state-t">{{ x.date|date:"d/m/Y" }} {{ x.date|time:"h:i:s A" }}</td>
    <td class="state-t">{{ x.sender }}</td>
    <td class="state-t">{{ x.recipient }}</td>
    <td class="state-t">{{ x.t`your text`ype }} </td>
    <td class="state-t">{{ x.amount }}</td>
    <td class="state-t">{{ x.trans_ref }}</td>
    <td class="state-t">{{ x.after_saldo }}</td>
    </tr>
    {% else %}
    <tr class="out">
    <td class="state-t">{{ x.date|date:"d/m/Y" }} {{ x.date|time:"h:i:s A" }}</td>
    <td class="state-t">{{ x.sender }}</td>
    <td class="state-t">{{ x.recipient }}</td>
    <td class="state-t">{{ x.type }} </td>
    <td class="state-t">{{ x.amount }}</td>
    <td class="state-t">{{ x.trans_ref }}</td>
    <td class="state-t">{{ x.after_saldo }}</td>
    </tr>


    {% endif %}
{% endfor %}

</table>

    <h4>Below you can specify dates for your statement</h4>
    <input type="date" name="date_min" value="{{ date_val1 }}" min="{{ min_date }}">
    <input type="date" name="date_max" value="{{ date_val2 }}" max="{{ max_date }}">
    <button type="submit">Apply</button>

</form>
</div>

{% endblock %}

I’m not adding my views.py code as I checked wether context variables are passed by adding a p tag and displaying both of them in this part :

{% block main %}
<p>{{ order }} {{ order2 }}</p>
<h1>STATEMENT</h1>

I’ve tried a couple solutions:
1.First one was the same as above but without changing selected to True but just leaving it at .selected to maybe add that attribute to the proper <option>
2.In the second one I tried to change the .value of the <select> option by id and it looked like this:

<form method="POST">{% csrf_token %}Sort by:
<select name="order-by" id="order-by" onload="get.ElementById('order-by').value='{{ order }}';">

    <option id="date" value="date">Date</option>
    <option id="from" value="from">From</option>
    <option id="to" value="to">To</option>
    <option id="type" value="type">Type</option>
    <option id="sum" value="sum">Sum</option>

</select>

<select name="order-by2" id="order-by2" onload="get.ElementById('order-by').value='{{ order2 }}';">

    <option id="asc" value="asc">Ascending</option>
    <option id="desc" value="desc">Descending</option>

   </select>

I’ve tried few other solutions, mostly changing the "on event"(onload, onselect, onchange and even onclick) and placing it in different tags of my subpage.

Let me just add that:

  1. The “ordering-by” feature works perfectly for both selects.
  2. There are two date-type fields on the bottom of this site that let you specify the daterange for your statement and they work perfectly as well.
  3. The date-type fields get their default value from context variables that are passed from views.py and they retain the chosen date as I pass chosen dates as context variables to the value Attribute.
<h4>Below you can specify dates for your statement</h4>
    <input type="date" name="date_min" value="{{ date_val1 }}" min="{{ min_date }}">
    <input type="date" name="date_max" value="{{ date_val2 }}" max="{{ max_date }}">

Values of {{ order }} and {{ order2 }} ARE 100% within one of the options from the select tag.

Does anyone have any idea how to resolve this?
Also This is my first time posting on this site so apologies if I have done something wrong.

Calculated font size returns smaller than div height

I am trying to fit some long text into a div, and I use the following Javascript function to calculate the required font size. The container is the actual div that will display, and the measurer is a temporary div that has taken all the properties of the container, so same margins, padding, etc.

However, the measurer returns a smaller font size but a correct div height.

The irregularity is, when the page loads, it displays this smaller font. But performing a soft reload (Ctrl-R) displays the correctly sized font perfectly fitting in the div. Doing a hard reload (Ctrl-Shift-R) reloads the smaller font again.

What could be causing this strange behavior?

const measurer = document.createElement("div");
const containerStyles = getComputedStyle(container);

for (let prop of containerStyles) {
  measurer.style[prop] = containerStyles.getPropertyValue(prop);
}

measurer.style.display = "hidden";
measurer.style.position = "absolute";
measurer.style.height = "auto";
measurer.innerHTML = text;
document.body.appendChild(measurer);

while (measurer.offsetHeight == 0 || measurer.offsetHeight >= container.offsetHeight) {
  measurer.style.fontSize = (fontSize--) + "px";
  measurer.innerHTML = "";
  measurer.innerHTML = text;
}

document.body.removeChild(measurer);

How to send an S/MIME encrypted file with an empty body using PHPMailer in PHP?

I’m trying to send an email using PHPMailer in PHP that includes an S/MIME encrypted file (smime.p7m) as an attachment. The email should have:
MIME-Version: 1.0
Content-Disposition: attachment; filename=”smime.p7m”
Content-Type: application/x-pkcs7-mime; smime-type=enveloped-data; name=”smime.p7m”
Content-Transfer-Encoding: base64
I want the email body to remain empty (no text/html content). How can I correctly configure PHPMailer to send this type of email with just the encrypted attachment?

I’ve tried using addAttachment() and setting $mail->Body = ”
Any guidance or examples would be appreciated.

My RUN and DEBUG doesn’t appear in vs code Help, I use xampp

I think there was supposed to be a green arrow that says run n rebug but mind just didnt exist, or maybe someone can teach me how to debug in php with xampp

I have PHP DEBUG by xdebug.org installed
I followed this video, https://www.youtube.com/watch?v=8ka_Efpl21Y

I ran my xampp, put a break point in a function where the code is supposed to run,

I open my website by typing the localhost url in chrome,

fill in my form, the website works, but nothing happens from breakpoint.

I saw people on YouTube have something called a run n debug but mine just doesn’t appear. When I press ctrl + shift + D, there’s checkbox for NOTICES, WARNINGS, ERRORS, EXCEPTIONS, EVERYTHING, but green arrow button with run n debug like I saw on YouTube

Why retry cound does not increase upon exception thrown?

In Symfony I use a custom Serializer upon a transport:

framework:
    messenger:
        transports:
            async: '%env(MESSENGER_TRANSPORT_DSN)%'
            failed: 'doctrine://default?table_name=failed_messages'
            sqs_channel_manager:
              dsn: '%env(SQS_CHANNEL_MANAGER_TRANSPORT_DSN)%'
              serializer: AppInfrastructureMessengerChannelManagerSerializer
              options:
                  access_key: '%env(AWS_ACCESS_KEY_ID)%'
                  secret_key: '%env(AWS_SECRET_ACCESS_KEY)%'
                  region: '%env(AWS_REGION)%'
                  queue_name: '%env(CHANNEL_MANAGER_QUEUE_NAME)%'
        failure_transport: failed
        default_bus: command.bus
        buses:
            event.bus: ~
        routing:

I also made this Serializer:


declare(strict_types=1);

namespace AppInfrastructureMessenger;

use AppDomainEventChannelManagerChannelManagerEventHasReceived;
use SymfonyComponentMessengerEnvelope;
use SymfonyComponentMessengerStampBusNameStamp;
use SymfonyComponentMessengerTransportSerializationSerializerInterface;

class ChannelManagerSerializer implements SerializerInterface
{
    public function decode(array $encodedEnvelope): Envelope
    {
        $data = json_decode($encodedEnvelope['body'], true);

        if (json_last_error() !== JSON_ERROR_NONE) {
            throw new InvalidArgumentException(
                'Invalid JSON received from SQS: ' . json_last_error_msg()
            );
        }

        return (new Envelope(new ChannelManagerEventHasReceived($data)))
            ->with(new BusNameStamp('event.bus'));
    }

    public function encode(Envelope $envelope): array
    {
        $event = $envelope->getMessage();

        return [
            'body' => json_encode($event->channelManagerData, JSON_THROW_ON_ERROR),
        ];
    }
}

Then I made this handler emulating an error:

declare(strict_types=1);

namespace AppApplicationEventListener;

use AppDomainEventChannelManagerChannelManagerEventHasReceived;
use Exception;
use SymfonyComponentMessengerAttributeAsMessageHandler;

class ChannelManagerSubscriber extends BaseEventListener
{
    #[AsMessageHandler]
    public function onChannelManagerEvent(ChannelManagerEventHasReceived $event): void
    {
        throw new Exception();
        dump($event);
    }
}

But running the queue:

 php -d memory_limit=-1 bin/console messenger:consume sqs_channel_manager -vv

Does not increase the count:

12:01:20 INFO      [messenger] Received message AppDomainEventChannelManagerChannelManagerEventHasReceived ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived"]
12:01:20 WARNING   [messenger] Error thrown while handling message AppDomainEventChannelManagerChannelManagerEventHasReceived. Sending for retry #1 using 930 ms delay. Error: "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: " ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived","message_id" => null,"retryCount" => 1,"delay" => 930,"error" => "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: ","exception" => SymfonyComponentMessengerExceptionHandlerFailedException^ { …}]
12:01:21 INFO      [messenger] Received message AppDomainEventChannelManagerChannelManagerEventHasReceived ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived"]
12:01:21 WARNING   [messenger] Error thrown while handling message AppDomainEventChannelManagerChannelManagerEventHasReceived. Sending for retry #1 using 1005 ms delay. Error: "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: " ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived","message_id" => null,"retryCount" => 1,"delay" => 1005,"error" => "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: ","exception" => SymfonyComponentMessengerExceptionHandlerFailedException^ { …}]
12:01:24 INFO      [messenger] Received message AppDomainEventChannelManagerChannelManagerEventHasReceived ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived"]
12:01:24 WARNING   [messenger] Error thrown while handling message AppDomainEventChannelManagerChannelManagerEventHasReceived. Sending for retry #1 using 983 ms delay. Error: "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: " ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived","message_id" => null,"retryCount" => 1,"delay" => 983,"error" => "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: ","exception" => SymfonyComponentMessengerExceptionHandlerFailedException^ { …}]
12:01:26 INFO      [messenger] Received message AppDomainEventChannelManagerChannelManagerEventHasReceived ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived"]
12:01:26 WARNING   [messenger] Error thrown while handling message AppDomainEventChannelManagerChannelManagerEventHasReceived. Sending for retry #1 using 929 ms delay. Error: "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: " ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived","message_id" => null,"retryCount" => 1,"delay" => 929,"error" => "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: ","exception" => SymfonyComponentMessengerExceptionHandlerFailedException^ { …}]
12:01:27 INFO      [messenger] Received message AppDomainEventChannelManagerChannelManagerEventHasReceived ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived"]
12:01:27 WARNING   [messenger] Error thrown while handling message AppDomainEventChannelManagerChannelManagerEventHasReceived. Sending for retry #1 using 1023 ms delay. Error: "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: " ["class" => "AppDomainEventChannelManagerChannelManagerEventHasReceived","message_id" => null,"retryCount" => 1,"delay" => 1023,"error" => "Handling "AppDomainEventChannelManagerChannelManagerEventHasReceived" failed: ","exception" => SymfonyComponentMessengerExceptionHandlerFailedException^ { …}]

As you can see the failure causes "retryCount" => 1 and not be increased. Do you know why?

Displaying about to expire items

I’m displaying Expired Items using this (codeigniter 3)

$qs6="SELECT a.item_name,a.item_code,b.category_name,a.expire_date from db_items as a,db_category as b where b.id=a.category_id and a.expire_date<='".date("Y-m-d")."' and a.status=1 limit 10";
$q6=$this->db->query($qs6);

if($q6->num_rows()>0){
  $i=1;
  foreach ($q6->result() as $row){
    echo "<tr>";
    echo "<td>".$i++."</td>";
    echo "<td>".$row->item_name."</td>";
    echo "<td>".$row->category_name."</td>";
    echo "<td>".show_date($row->expire_date)."</td>";
    echo "</tr>";
  }
}

I want to display another table showing about to expire items 4 months before expiry. How should i display it. Please Help.

setting up wordpress on an amazon linux 2023 ec2 instance [closed]

i have setup the LAMP stack and downloaded wordpress. also, extracted the file, changed wp-config-sample.php to wp-config.php and alreadey placed wordpress in /var/www/html/ folder. buti am only gettong “Apache is working” when paste the ip of my instamce on the web browser.

ive tried to restart httpd but i’m not getting wordpress website

Child window window.open not returning to the base memory of parent

I Have a app in app we have a widget we want to open this widget into new window
when i open window i communicate to parent window open in child when child is closed i communicate to parent child closed so parent open this widget in parent
memory increase
problem is when i open it takes alot of memory to open
i research on this and people saying it takes
so when i close widget it should return to base memory

export const openWidgetInNewWindow = ({
  widgetId,
  rowData,
  width = 900,
  height = 600,
  data,
  onCloseCallback = null,
}) => {
  // Get the name of the widget based on the ID

  const widgetName = Object.keys(allWidgetIDs).find(
    (key) => allWidgetIDs[key]?.id === widgetId,
  )

  // Calculate center position for the child window
  const left = window.screenX + (window.outerWidth - width) / 2
  const top = window.screenY + (window.outerHeight - height) / 2
  const url = `/widget/${widgetId}/${widgetName}`

  // Open the child window with specified dimensions and position

  childWindow = window.open(
    url,
    '_blank',
    `width=${width},height=${height},top=${top},left=${left}`,
  )

  // Store the window reference using its ID
  openWindows[widgetId] = childWindow

  if (childWindow) {
    childWindow.focus()

    // Set the widget as open in Redux
    store.dispatch.boards.addWidget({
      boardId: rowData,
      widget: { id: widgetId, name: widgetName },
      childOpen: true,
    })

    // Getting the latest current Board after dispatching so that can be used throughout the app
    const updatedCurrentBoard = getCurrentBoard()

    // Event handler to handle messages from child window (like closure)
    const closeTimeouts = {}

    const handleMessage = (event) => {
      if (event.data?.type === 'childClosed') {
        const widgetId = event?.data?.widgetId
        const data = event.data?.closed

        if (closeTimeouts[widgetId]) {
          clearTimeout(closeTimeouts[widgetId])
        }

        closeTimeouts[widgetId] = setTimeout(() => {
          if (data) {
            updateWidgetChildOpen(widgetId, false)
            if (onCloseCallback) onCloseCallback()
          }

          delete closeTimeouts[widgetId]
        }, 10)
      }
    }

    // Listen for messages from the child window
    window.addEventListener('message', handleMessage)

    // Cleanup listener on component unmount
    const cleanup = () => {
      window.removeEventListener('message', handleMessage)
    }
    window.reduxStore = updatedCurrentBoard

    return { childWindow, cleanup }
  } else {
    console.error('Failed to open child window')
    return null
  }
}

This is child window

function OrderEntry(props) {
  const { defaultSettings, widgetId, rowData } = props
  const boardId = rowData

  return (
    <Box
      onClick={() =>
        openWidgetInNewWindow({
          widgetId,
          rowData: boardId,
          width: 346,
          height: 400,
          onCloseCallback: () => {
            console.log('Widget closed')
          },
        })
      }
    >
      Childwindow open
    </Box>
  )
}

OrderEntry.propTypes = {
  defaultSettings: propTypes.object.isRequired,
  widgetId: propTypes.any,
  rowData: propTypes.string,
}

export default memo(OrderEntry)
  useEffect(() => {
// Initialize global event listeners
console.log('Initializing global event listeners')
const cleanupFns = initializeGlobalEventListeners({
  messageHandler: (event) => handleWidgetCommunication(event),
  unloadHandler: () => console.log('Window unloaded'),
  widgetId: widgetId,
})

// Apply zoom reset
function applyZoomReset() {
  const r = window.devicePixelRatio || 1
  document.documentElement.style.zoom = 1 / r
}
window.addEventListener('resize', applyZoomReset)
applyZoomReset()

// Cleanup both on unmount
return () => {
  cleanupFns.forEach((cleanupFn) => cleanupFn())
  window.removeEventListener('resize', applyZoomReset)
}

}, [])

Error: Cannot find module ‘../lightningcss.win32-x64-msvc.node’ ADRIAN [duplicate]

Require stack:

  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopnode_moduleslightningcssnodeindex.js
  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopdistcss-to-rnindex.js
  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopdistmetroindex.js
  • D:codebility_projectsSubTracknode_modulesnativewinddistmetroindex.js
  • D:codebility_projectsSubTrackmetro.config.js
  • D:codebility_projectsSubTracknode_modulescosmiconfignode_modulesimport-freshindex.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistloaders.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistcreateExplorer.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistindex.js
  • D:codebility_projectsSubTracknode_modulesmetro-configsrcloadConfig.js
  • D:codebility_projectsSubTracknode_modulesmetro-configsrcindex.js
  • D:codebility_projectsSubTracknode_modules@expometrometro-configindex.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartservermetroinstantiateMetro.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartservermetroMetroBundlerDevServer.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartserverDevServerManager.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartstartAsync.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartindex.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildbincli
  • D:codebility_projectsSubTracknode_modulesexpobincli
    Error: Cannot find module ‘../lightningcss.win32-x64-msvc.node’
    Require stack:
  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopnode_moduleslightningcssnodeindex.js
  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopdistcss-to-rnindex.js
  • D:codebility_projectsSubTracknode_modulesreact-native-css-interopdistmetroindex.js
  • D:codebility_projectsSubTracknode_modulesnativewinddistmetroindex.js
  • D:codebility_projectsSubTrackmetro.config.js
  • D:codebility_projectsSubTracknode_modulescosmiconfignode_modulesimport-freshindex.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistloaders.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistcreateExplorer.js
  • D:codebility_projectsSubTracknode_modulescosmiconfigdistindex.js
  • D:codebility_projectsSubTracknode_modulesmetro-configsrcloadConfig.js
  • D:codebility_projectsSubTracknode_modulesmetro-configsrcindex.js
  • D:codebility_projectsSubTracknode_modules@expometrometro-configindex.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartservermetroinstantiateMetro.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartservermetroMetroBundlerDevServer.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartserverDevServerManager.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartstartAsync.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildsrcstartindex.js
  • D:codebility_projectsSubTracknode_modulesexponode_modules@expoclibuildbincli
  • D:codebility_projectsSubTracknode_modulesexpobincli
    at Function._resolveFilename (node:internal/modules/cjs/loader:1383:15)
    at defaultResolveImpl (node:internal/modules/cjs/loader:1025:19)
    at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1030:22)
    at Function._load (node:internal/modules/cjs/loader:1192:37)
    at TracingChannel.traceSync (node:diagnostics_channel:322:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:237:24)
    at Module.require (node:internal/modules/cjs/loader:1463:12)
    at require (node:internal/modules/helpers:147:16)
    at Object. (D:codebility_projectsSubTracknode_modulesreact-native-css-interopnode_moduleslightningcssnodeindex.js:21:22)
    at Module._compile (node:internal/modules/cjs/loader:1706:14)

SOLUTION: just download this “https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170”

CodeQL in Azure DevOps scansJavaScript files but doesn’t detect known vulnerabilities in the code [closed]

I’m using CodeQL in Azure DevOps pipeline to scan an ASP.NET Core MVC app. My pipeline includes this step:


 task: AdvancedSecurity-Codeql-Init@1
  inputs:
    languages: 'csharp, javascript'
    codeqlpathstoignore: 'bin,obj'
    codeqlpathstoinclude: 'wwwroot/js,wwwroot/lib'
  displayName: Initialize CodeQL
...
...
...
- task: AdvancedSecurity-Codeql-Analyze@1
  displayName: Run CodeQl analysis

In order to scan wwwroot folder, I created a JS project with npm within my ASP .NET Core app. This step allowed me find dependency vulnerabilities in wwwroot/lib folder.
However, I can’t achecve the goal of scanning .js files to find vulnerabilities within the code.
I can see that CodeQL extracts files (Extracting <path to my JS project with npm>myCustomeCode.js, which comes from the pipeline logs).However, it does not detect known vulnerabilities in the .js files that I know are vulnerable.

Questions:

Why doesn’t CodeQL detect known vulnerabilities in .js files, even though they are scanned?