Giter Club home page Giter Club logo

Comments (12)

doomedraven avatar doomedraven commented on May 19, 2024

oh nice catch, weird how i didn't get it before in local, fixing

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

should be fixed now, thanks for reporting, and special thansk for markdown escape when posting config, let me know if that was fixed

from capev2.

benweber2 avatar benweber2 commented on May 19, 2024

I'm on dbad1fc and still getting the error:

ERROR    lib.cuckoo.core.scheduler: Task #14: Failure in AnalysisManager.run: 'Config' object has no attribute 'routing'
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and self.routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

ok setting your values from config i was able to reproduce the bug but a bit different, working on it

Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and self.routing_cfg.routing.internet != "none":
AttributeError: 'AnalysisManager' object has no attribute 'routing_cfg'

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

@benweber2 can you git pull and try now? i declared routing config in wrong class so moved it to the top as it uses in both classes

from capev2.

benweber2 avatar benweber2 commented on May 19, 2024

Still having an issue after 'git pull'. Here is an extended log output while trying to resubmit a sample:

Message: 'Task #15: Processing task'
Arguments: ()
2020-01-05 22:41:28,725 [lib.cuckoo.core.scheduler] DEBUG: Task #15: Processing task
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 241, in launch_analysis
    self.task.id, self.task.category.upper(), convert_to_printable(self.task.target)))
Message: "Task #15: Starting analysis of FILE '/tmp/cuckoo-tmp/upload_lg57o2qc/Xy5gI3siaiZz0X'"
Arguments: ()
2020-01-05 22:41:28,745 [lib.cuckoo.core.scheduler] INFO: Task #15: Starting analysis of FILE '/tmp/cuckoo-tmp/upload_lg57o2qc/Xy5gI3siaiZz0X'
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 255, in launch_analysis
    if not self.store_file():
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 129, in store_file
    log.info("Task #{0}: File already exists at '{1}'".format(self.task.id, self.binary))
Message: "Task #15: File already exists at '/opt/CAPEv2/storage/binaries/bc154f8a0b83d7ce9a4e18929dcde5e16730d044af583feac1c35bae7b78c0f4'"
Arguments: ()
2020-01-05 22:41:28,778 [lib.cuckoo.core.scheduler] INFO: Task #15: File already exists at '/opt/CAPEv2/storage/binaries/bc154f8a0b83d7ce9a4e18929dcde5e16730d044af583feac1c35bae7b78c0f4'
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 276, in launch_analysis
    self.acquire_machine()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 183, in acquire_machine
    self.task.id, machine.name, machine.label)
Message: 'Task #15: acquired machine win7 (label=win7)'
Arguments: ()
2020-01-05 22:41:28,817 [lib.cuckoo.core.scheduler] INFO: Task #15: acquired machine win7 (label=win7)
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 287, in launch_analysis
    ResultServer().add_task(self.task, self.machine)
  File "/opt/CAPEv2/lib/cuckoo/core/resultserver.py", line 454, in add_task
    self.instance.add_task(task.id, machine.ip)
  File "/opt/CAPEv2/lib/cuckoo/core/resultserver.py", line 300, in add_task
    log.debug("Now tracking machine %s for task #%s", ipaddr, task_id)
Message: 'Now tracking machine %s for task #%s'
Arguments: ('192.168.122.105', 15)
2020-01-05 22:41:28,912 [root] DEBUG: Now tracking machine 192.168.122.105 for task #15
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 304, in launch_analysis
    machinery.start(self.machine.label)
  File "/opt/CAPEv2/modules/machinery/kvm.py", line 29, in start
    super(KVM, self).start(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 399, in start
    log.debug("Starting machine %s", label)
Message: 'Starting machine %s'
Arguments: ('win7',)
2020-01-05 22:41:28,939 [lib.cuckoo.common.abstracts] DEBUG: Starting machine win7
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 304, in launch_analysis
    machinery.start(self.machine.label)
  File "/opt/CAPEv2/modules/machinery/kvm.py", line 29, in start
    super(KVM, self).start(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 401, in start
    if self._status(label) != self.POWEROFF:
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 504, in _status
    log.debug("Getting status for %s", label)
Message: 'Getting status for %s'
Arguments: ('win7',)
2020-01-05 22:41:28,940 [lib.cuckoo.common.abstracts] DEBUG: Getting status for win7
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 304, in launch_analysis
    machinery.start(self.machine.label)
  File "/opt/CAPEv2/modules/machinery/kvm.py", line 29, in start
    super(KVM, self).start(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 416, in start
    "{1}".format(vm_info.snapshot, label))
Message: 'Using snapshot 1577854212 for virtual machine win7'
Arguments: ()
2020-01-05 22:41:28,976 [lib.cuckoo.common.abstracts] DEBUG: Using snapshot 1577854212 for virtual machine win7
--- Logging error ---
Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 304, in launch_analysis
    machinery.start(self.machine.label)
  File "/opt/CAPEv2/modules/machinery/kvm.py", line 29, in start
    super(KVM, self).start(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 444, in start
    self._wait_status(label, self.RUNNING)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 333, in _wait_status
    current = self._status(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 504, in _status
    log.debug("Getting status for %s", label)
Message: 'Getting status for %s'
Arguments: ('win7',)
2020-01-05 22:41:37,541 [lib.cuckoo.common.abstracts] DEBUG: Getting status for win7
--- Logging error ---
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 358, in launch_analysis
    machinery.stop(self.machine.label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 451, in stop
    log.debug("Stopping machine %s", label)
Message: 'Stopping machine %s'
Arguments: ('win7',)
2020-01-05 22:41:37,570 [lib.cuckoo.common.abstracts] DEBUG: Stopping machine win7
--- Logging error ---
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 358, in launch_analysis
    machinery.stop(self.machine.label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 453, in stop
    if self._status(label) == self.POWEROFF:
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 504, in _status
    log.debug("Getting status for %s", label)
Message: 'Getting status for %s'
Arguments: ('win7',)
2020-01-05 22:41:37,571 [lib.cuckoo.common.abstracts] DEBUG: Getting status for win7
--- Logging error ---
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 358, in launch_analysis
    machinery.stop(self.machine.label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 471, in stop
    self._wait_status(label, self.POWEROFF)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 333, in _wait_status
    current = self._status(label)
  File "/opt/CAPEv2/lib/cuckoo/common/abstracts.py", line 504, in _status
    log.debug("Getting status for %s", label)
Message: 'Getting status for %s'
Arguments: ('win7',)
2020-01-05 22:41:37,999 [lib.cuckoo.common.abstracts] DEBUG: Getting status for win7
--- Logging error ---
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 371, in launch_analysis
    ResultServer().del_task(self.task, self.machine)
  File "/opt/CAPEv2/lib/cuckoo/core/resultserver.py", line 458, in del_task
    self.instance.del_task(task.id, machine.ip)
  File "/opt/CAPEv2/lib/cuckoo/core/resultserver.py", line 316, in del_task
    ipaddr, task_id
Message: 'Stopped tracking machine %s for task #%s'
Arguments: ('192.168.122.105', 15)
2020-01-05 22:41:38,047 [root] DEBUG: Stopped tracking machine 192.168.122.105 for task #15
--- Logging error ---
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/logging/handlers.py", line 72, in emit
    self.doRollover()
  File "/usr/lib/python3.6/logging/handlers.py", line 397, in doRollover
    if self.backupCount > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Call stack:
  File "/usr/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 506, in run
    log.exception("Task #{0}: Failure in AnalysisManager.run: {1}".format(self.task.id, e))
Message: "Task #15: Failure in AnalysisManager.run: 'Config' object has no attribute 'routing'"
Arguments: ()
2020-01-05 22:41:38,065 [lib.cuckoo.core.scheduler] ERROR: Task #15: Failure in AnalysisManager.run: 'Config' object has no attribute 'routing'
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'
ERROR    lib.cuckoo.core.scheduler: Task #15: Failure in AnalysisManager.run: 'Config' object has no attribute 'routing'
Traceback (most recent call last):
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 460, in run
    success = self.launch_analysis()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 307, in launch_analysis
    self.route_network()
  File "/opt/CAPEv2/lib/cuckoo/core/scheduler.py", line 534, in route_network
    elif self.route == "internet" and routing_cfg.routing.internet != "none":
AttributeError: 'Config' object has no attribute 'routing'

Output of git log:

ben@capev2:/opt/CAPEv2$ git log | head -n1
commit 955daa62c12bb8b05503edd5f44f5825c7a54637

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

hm, i will need your help here, as i can't reproduce it, i just put breakpoint and i can see it just fine

>>> routing_cfg.routing.internet
'eno1'

so what i need from you if you can do this:
can you edit CAPEv2/lib/cuckoo/core/scheduler.py in line 526 before
if self.route in ("none", "None", "drop"):

put import code;code.interact(local=dict(locals(), **globals()))
this will return you python console, and there just type this few commands

dir(routing_cfg)
routing_cfg
routing_cfg.routing.internet

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

if you want i can push that to repo so you will just need to check that in logging

from capev2.

benweber2 avatar benweber2 commented on May 19, 2024

Output:

>>> dir(routing_cfg)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'fullconfig', 'get', 'get_config', 'inetsim', 'routing', 'socks5', 'socks_ch', 'tor', 'vpn', 'vpn0']
>>> routing_cfg
<lib.cuckoo.common.config.Config object at 0x7f39f31b26d8>
>>> routing_cfg.routing.internet
'ens32'

I think this was an issue on my end. Restarting the process to do make these edits seems to have fixed it.

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

ah yes, you need to restart failing service to load the update, yes looks like solved, now try to remove that import and try again

from capev2.

benweber2 avatar benweber2 commented on May 19, 2024

That fixed it. Thanks for the continued work!

from capev2.

doomedraven avatar doomedraven commented on May 19, 2024

thanks for reporting bugs to make it better

from capev2.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.